4
아이폰 4.3의 경우 tableview에서 여러 행을 선택해야합니다. 액세서리보기 유형을 선택한 경우 셀의 배경색을 변경해야합니다. 여러 개의보기로 이동 한 후 다시보기로 전환해야합니다. 선택한 셀을 표시합니다.iPhone 4.3 용 Tableview에서 다중 셀 선택
-(void) buttonPressed:(UIButton *)sender
{
UITableViewCell* selectedCell = (UITableViewCell*)sender.superview.superview;
if([sender isSelected])
{
[selectedCell setSelected:NO];
//sender.backgroundColor = [UIColor clearColor];
[selectedCell setBackgroundColor:[UIColor clearColor]];
[self.selectedRows removeObject:[NSNumber numberWithInt:sender.tag]];
[sender setSelected:NO];
}
else
{
[selectedCell setSelected:YES];
sender.backgroundColor = [[UIColor alloc] initWithRed:0.725 green:0.894 blue:1 alpha:1];
//[selectedCell setBackgroundColor:[[UIColor alloc] initWithRed:0.725 green:0.894 blue:1 alpha:1]];
[self.selectedRows addObject:[NSNumber numberWithInt:sender.tag]];
[sender setSelected:YES];
}
}
I :
cellButton = [UIButton buttonWithType:UIButtonTypeCustom];
cellButton.tag = indexPath.row;
cellButton.frame = CGRectMake(POSITION_LABEL_X, POSITION_LABEL_Y, 320, 60);
cellButton.backgroundColor = [UIColor clearColor];
[cellButton addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:cellButton];
if(self.selectedRows && [self.selectedRows containsObject:indexPath])
{
UIImage *rowBackground = [UIImage imageNamed:@"cellBG.png"];
((UIImageView *)cell.backgroundView).image = rowBackground;
cell.selectedBackgroundView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 60)] autorelease];
cell.selectedBackgroundView.backgroundColor = [[[UIColor alloc] initWithRed:0.725 green:0.894 blue:1 alpha:1] autorelease];
}
else {
cell.selectedBackgroundView.backgroundColor = [UIColor clearColor];
}
는 버튼 액션을 준 : 나는 다중 선택을 할 수 있어요
이 내가 IndexPath에서 행에 대한 셀에
을 구현 한 논리입니다 선택한 셀 값을 데이터베이스에 저장하고 해당 값을 다시 검색하여 tableView로 다시 돌아올 수 있지만 해당 값을 사용하여 선택한 셀을 만드는 방법은 알 수 없습니다.-(void) highlightSelectedValue
{
[self.selectedRows removeAllObjects];
NSLog(@"response %@",self.taskResponse.response);
NSArray *selected = [self.taskResponse.response componentsSeparatedByString:@","];
for (NSString *s in selected) {
[self.selectedRows addObject:[NSNumber numberWithInt:([s intValue] - 1)]];
UIButton *selectedButton = (UIButton*)cellButton;
[selectedButton setSelected:NO];
[selectedButton setTag:[s integerValue] -1 ];
[self buttonClicked:selctedButton];
[self.selectionTableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:([s integerValue] - 1) inSection:0] animated:NO scrollPosition:UITableViewScrollPositionMiddle];
}
}
감사합니다.
고마워 그 작업을 해결하는 데 도움이 될 수 있습니다보십시오. – Srinivas
하지만 cell.it을 선택 취소하고 싶지는 않습니다. – Srinivas
일부 불량 값을 가져와 필요한 곳에 배치하십시오. – siva