是否有通知或委託方法可用於檢測表視圖何時進入編輯狀態?UITableView編輯/完成事件
我想要做的是檢測表正在編輯,然後顯示一個額外的行,說「添加新項目」或類似的東西。
我試着在視圖控制器加載後在數組末尾添加「添加新項」行,然後根據[tableView isEditing]是否爲true或者返回[array count](當我I正在編輯)或[陣列計數] - 1(當我不編輯時)。
任何想法? Apple在表格中編輯項目並允許刪除的方式是什麼?
是否有通知或委託方法可用於檢測表視圖何時進入編輯狀態?UITableView編輯/完成事件
我想要做的是檢測表正在編輯,然後顯示一個額外的行,說「添加新項目」或類似的東西。
我試着在視圖控制器加載後在數組末尾添加「添加新項」行,然後根據[tableView isEditing]是否爲true或者返回[array count](當我I正在編輯)或[陣列計數] - 1(當我不編輯時)。
任何想法? Apple在表格中編輯項目並允許刪除的方式是什麼?
我找到了。重寫此方法:
- (void)setEditing:(BOOL)editing animated:(BOOL)animated{
[super setEditing:editing animated:animated];
// do something
}
您可以做的是將IBAction作爲選擇器添加到editButton中。當點擊editButton時,該方法將被調用。例如:
-(void)viewDidLoad
{
// ...
[self.editButtonItem setAction:@selector(editAction:)];
[self.navigationItem setRightBarButtonItem: self.editButtonItem];
// .. your code
}
-(IBAction)editAction:(id)sender
{
UIBarButtonItem * button = ((UIBarButtonItem*)sender);
if (!self.tableView.editing)
{
[self.tableView setEditing:YES animated:YES];
[button setTitle:@"Done"];
// do your stuff...
}
else
{
[button setTitle:@"Edit"];
[self.tableView setEditing:NO animated:YES];
// do your stuff...
}
}
如果你有自己的UIButton並沒有採用標準的self.editButtonItem然後用 [yourButton addTarget:自我行動:@選擇(editAction :) forControlEvents:UIControlEventTouchUpInside]。 並將其作爲editAction中的UIButton *處理:方法