我在tableView上填充了10个元素。我给出了选择元素的复选框,现在我想限制用户不要选择tableViewCell的三个以上元素。我怎么能这样做?
{{1}}
答案 0 :(得分:1)
将NSUInteger变量声明为CheckMarkcount。
@interface ViewController ()
{
NSUInteger CheckMarkcount;
}
-(void)viewDidLoad{
CheckMarkcount = 0;
}
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if (cell.accessoryType == UITableViewCellAccessoryCheckmark) {
cell.accessoryType = UITableViewCellAccessoryNone;
if(CheckMarkcount>0)
CheckMarkcount--;
}
else {
if(CheckMarkcount<3)
{
cell.accessoryType = UITableViewCellAccessoryCheckmark;
CheckMarkcount++;
}
}
}
答案 1 :(得分:-1)
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
if (cell.accessoryType == UITableViewCellAccessoryNone)
{
if(count <3)
{
cell.accessoryType = UITableViewCellAccessoryCheckmark;
count = count + 1;
}
else
{
//alert
NSLog(@"greater then 3");
}
}
else
{
if(count>1)
{
cell.accessoryType = UITableViewCellAccessoryNone;
count--;
}
else
{
//show alert
NSLog(@"choose only 1");
}
}
[self.tableView deselectRowAtIndexPath:indexPath animated:YES];
}