我正在使用自定义UITableViewCell类。我的单元格上有多个按钮(准确地说是4个),按钮单击是在使用这个单元类的UIViewController中处理的。
我试图使用按钮的标签来计算点击按钮的行号。但是,如果未创建单元格而是使用自由对象,则执行此操作会导致问题。在这种情况下,标签和行号不匹配。
有人可以告诉我如何处理这个案子吗?如果我为不同行中的所有按钮指定相同的标记,如何识别单击该按钮的行?
非常感谢。
答案 0 :(得分:0)
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
MyTableCell *cell = (MyTableCell *) [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
// whatever you have now
}
// Set up the cell...
cell.myListViewController = self;
int tag = indexPath.row;
cell.button1.tag = tag;
cell.button2.tag = tag;
cell.button3.tag = tag;
....
}
此代码将为每行中的按钮提供唯一标记。您正在设置标记不在新单元格创建中,但适用于所有情况,包括重用。