2010-04-04 58 views
0

我有一个表视图,其中有来自数据存储的0或n行数据。我在视图导航栏的右侧添加了一个自定义的编辑按钮。默认情况下,编辑按钮被点击时,在操作事件,我设置视图编辑模式:动态添加一个新行作为添加在编辑模式下的UITableView?

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

我想在与添加按钮表视图的结束作为附件添加行在表格视图处于编辑模式时位于左侧。当视图不处于编辑模式时,“添加”行将不会显示。这与当联系人处于编辑模式时iPhon'e Contacts应用程序的情况非常相似。

我不确定是否需要动态添加行,以及如果是这样?我猜的另一种方法是当tableView:numberOfRowsInSection:被调用时添加更多行?如果后面是这种情况,那么当视图不处于编辑模式时,必须隐藏它,并且在视图处于编辑状态时可以看到它。

顺便说一下,我的表视图是从xib文件加载。不确定是否有任何设置将表视图的样式指定为UITableViewCellEditingStyleDelete和UITableViewCellEditingStyInsert以启用添加功能?

回答

4

你需要实现一堆委托方法。 在的UITableViewDelegate方面:

- (UITableViewCellEditingStyle) tableView: (UITableView *) tableView 
editingStyleForRowAtIndexPath: (NSIndexPath *) indexPath 

在UITableViewDataSource方面:

- (void) tableView: (UITableView *) tableView commitEditingStyle: (UITableViewCellEditingStyle) editingStyle 
forRowAtIndexPath: (NSIndexPath *) indexPath 

您可以只需添加新行到数据源,然后调用[tableView reloadData][tableView insertRowsAtIndexPaths:...]

HTH。

相关问题