2012-03-26 27 views
3

我是iPhone编程新手,陷入困境。如何使用UIButton编辑UITableViewCell?

情况是我想让UITableView进入UIButton点击编辑模式。进入编辑模式后,我应该在每个单元上都有一个复选框。如果单击UIToolBarButton,我想更改选中的单元格图像。

我该如何做到这一点。任何帮助,将不胜感激。

+0

如果你想将检查UITableViewCells的图像UIToolBarButton,再想想。如果表是100个细胞的&如果用户选择仅有10细胞,然后る会如何展现10 UITollBar两次bcoz图标。 – 2012-03-26 13:23:38

+0

我不打算添加100个工具栏项目,但想要更改单击收费栏项目 – Hassam 2012-03-26 13:42:51

+0

时检查编辑答案的单元格图像。这是你想要的吗? – 2012-03-26 13:53:33

回答

5

就像lnafziger说,连接到您的按钮的功能进入编辑模式调用

[self.tableview setEditing:YES animated:YES]; 

要显示在你的细胞复选框当桌子处于编辑模式添加这些行到viewDidLoad

[self.tableView setAllowsSelectionDuringEditing:YES]; 
[self.tableView setAllowsMultipleSelectionDuringEditing:YES]; 

然后为您的UIBarButtonItem改变图像添加一个用于与所述[self.tableView indexPathsForSelectedRows]阵列循环,并且改变每个细胞图像像这样:

NSArray *paths = [self.tableView indexPathsForSelectedRows]; 
for (NSIndexPath *path in paths) { 
    UITableViewCell *cell = (UITableViewCell *)[self.tableView cellForRowAtIndexPath:path]; 
    //change cell.imageView's image 
} 
+0

它似乎工作正常,但有一点问题。它只会改变当前可见的单元格的图像,并且不会更改被选中但不可见的单元格的图像。在cellForRowAtIndexPath中有没有解决方案 – Hassam 2012-03-28 11:18:08

+0

或者willDisplayCellAtIndexPath方法在'cell.selected'中更改图片请接受答案。 – JonasG 2012-03-28 12:55:57

1

要使用按钮,进入编辑模式,从按钮的操作方法调用下面的代码:

[self.tableview setEditing:YES animated:YES]; 

要更改的复选框,则需要将电池的editingAccessoryView设置为自定义视图(通常在cellForRowAtIndexPath)。

相关问题