如何停止在自定义tableview单元格中交换数据?

时间:2016-06-11 13:05:13

标签: ios uitableview xib

我正在开发一个表格视图应用程序(我设计了uitableview单元格笔尖).once我向下滚动tableview我的单元格数据正在改变。你能指导我。我发布我的代码

static NSString * simpleTableIdentifier = @" Cell";

Bitmap

2 个答案:

答案 0 :(得分:0)

请在数据源中添加一个键,通过设置值0/1来确定您是否选择了该行。 喜欢这个

[self.cusineFilterData setValue:[NSNumber numberWithBool:NO] forKeyPath:@"isSelected"]; // It will add one key "isSelected" in all cusine filter data

cellForRow中检查“isSelected”属性的值并根据该显示复选标记。

if([[[self.cusinrFilterData objectAtIndex:indexPath] objectForKey:@"isSelected"] boolValue])
{
   //show check mark
  [cell.userSelectedCusine setBackgroundImage:[UIImage imageNamed:@"checkboxselect"] forState:UIControlStateSelected];
}
else
{
  //hide check mark
  [cell.userSelectedCusine setBackgroundImage:[UIImage imageNamed:@"checkbozempty"] forState:UIControlStateNormal];

}

didSelect中,根据行选择确保键值0到1和1到0。

if([[[self.cusinrFilterData objectAtIndex:indexPath] objectForKey:@"isSelected"] boolValue])
{

   [[[self.cusinrFilterData objectAtIndex:indexPath] setValue:[NSNumber numberWithBool:NO] forKey:@"isSelected"];
}
else
{
   [[[self.cusinrFilterData objectAtIndex:indexPath] setValue:[NSNumber numberWithBool:YES] forKey:@"isSelected"];
}

答案 1 :(得分:0)

<强>被修改

很抱歉误会,你可以尝试一下。

CusineTypeCell *cell = (CusineTypeCell *)[tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier forIndexPath:indexPath];