我已經有UITableView
已經編程創建。我現在試圖添加使用編輯模式刪除行的功能。iOS「刷卡刪除」不改變編輯按鈕狀態
我添加了這樣的默認方式:
self.navigationItem.leftBarButtonItem = self.editButtonItem;
當你輕點按鈕,進入編輯模式,按鈕變爲「完成」按鈕。
但是,當我「滑動刪除」行時,只顯示刪除按鈕,現有編輯按鈕不會更改爲「完成」。
有什麼我需要做額外的,因爲我以編程方式創建表視圖?
下面是我的實現代碼如下代碼:
- (void)viewDidLoad
{
self.voucherTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 36, 320, self.view.frame.size.height - 36) style:UITableViewStylePlain];
self.voucherTableView.autoresizingMask = UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth;
self.voucherTableView.delegate = self;
self.voucherTableView.dataSource = self;
[self.view addSubview:self.voucherTableView];
self.navigationItem.rightBarButtonItem = self.editButtonItem;
}
// Default table view data source methods go here
- (void)setEditing:(BOOL)editing animated:(BOOL)animated
{
[super setEditing:editing animated:animated];
[self.voucherTableView setEditing:editing animated:animated];
}
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
return UITableViewCellEditingStyleDelete;
}
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete)
{
// Commit the delete
}
}
我對你的問題有點困惑。通常使用左側的刪除按鈕或通過滑動/滑動刪除來完成刪除。無論哪種情況,你都應該得到一個「刪除」按鈕來確認。 「完成」按鈕與刪除無關,只是退出編輯模式。查看tableview的完整設置也很有幫助。 –
感謝您的評論。對於這兩種類型的編輯,我都得到了「刪除」按鈕,但是當您執行「幻燈片刪除」時,原始的「編輯」按鈕不會更改爲「完成」。我已將我的代碼添加到原始問題中。 –
好多了! –