UITableViewCell 中的单选控制 UITableViewCellAccessory Checkmark
需要注意的是这个函数,用来设置cell的UITableViewCellAccessory
Type 属性--这里用到UITableViewCellAccessory
Checkmark
- (UITableViewCellAccessory Type)tableView:(UITableView *)tableView accessoryTypeForRowWithI
ndexPath:(NSIndexPath *)indexPath
{
if(indexPath.row==currentIndex){
return UITableViewCellAccessory
Checkmark;
}
else{
return UITableViewCellAccessory
None;
}
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView deselectRowAtIndexPath:indexPath animated:NO];
if(indexPath.row==currentIndex){
return;
}
NSIndexPath *oldIndexPath = [NSIndexPath indexPathForRow:currentIndex
inSection:0];
UITableViewCell *newCell = [tableView cellForRowAtIndexPath:indexPath];
if (newCell.accessoryType == UITableViewCellAccessory
None) {
newCell.accessoryType = UITableViewCellAccessory
Checkmark;
newCell.textColor=[UIColor blueColor];
}
UITableViewCell *oldCell = [tableView cellForRowAtIndexPath:oldIndexPath];
if (oldCell.accessoryType == UITableViewCellAccessory
Checkmark) {
oldCell.accessoryType = UITableViewCellAccessory
None;
oldCell.textColor=[UIColor blackColor];
}
currentIndex=indexPath.row;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [tableView dequeueReusableCellWithI
dentifier:@"MyIdentifier"];
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:@"MyIdentifier"] autorelease];
}
if(indexPath.row==currentIndex){
cell.textColor=[UIColor blueColor];
}
else{
cell.textColor=[UIColor blackColor];
}
cell.text=@"ttttttttttttttt";
return cell;
}
- (UITableViewCellAccessory
{
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
}