2014-04-01 57 views
0

我有一個視圖控制器有2個表視圖A和B.在表A中,我想啓用刪除單元格,在表B中,我想禁用刪除單元格。UITableView:多個表:如何禁用單個表的單元格刪除?

實現- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{}將啓用視圖控制器中所有表視圖上的刪除操作(當單元格向左滑動時,將出現刪除按鈕)。

我該如何禁用單個表?

+0

可能對你有幫助http://stackoverflow.com/questions/5747889/two-uitableview-in-the-same-view –

回答

0

你應該低於委託方法實現,就像這樣:

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    if(tableView == tableViewA) 
     return UITableViewCellEditingStyleNone; 
    else 
     return UITableViewCellEditingStyleDelete; 
} 

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath;方法是在UITableView犯的編輯,因此如果用戶調用編輯操作將被調用。

0

commitEditingStyle功能有一個參數tableView。你可以給你的tableView分配不同的標籤,並在這個函數中檢測它們,並且返回YES和NO。

+0

雖然這個函數有一個返回類型的VOID? – mrd

相關問題