2013-01-09 64 views
-1

我知道這種類型的問題已經在SO這裏問過了,我已經嘗試過幾乎所有的問題,但都無濟於事。我試圖從UITableView中刪除一行。這是我的代碼。當刪除一行時,沒有可見的@interface for UITableView

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    if (editingStyle == UITableViewCellEditingStyleDelete) { 
     //calls to a method that deletes the row from the backend SQLite database 
     [self deleteCompany:indexPath.row]; 

     //theCompanies is a NSMutableArray. When the app starts, it retrieves the data and display it in the UITableView 
     [theCompanies removeObjectAtIndex:indexPath.row]; 

     //Below line is where the error occurs. 
     [self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] 
         withRowAnimation:YES 
       UITableViewRowAnimationFade:UITableViewRowAnimationFade]; 
    } 
    else if (editingStyle == UITableViewCellEditingStyleInsert) { 

    } 
} 

當我構建應用程序時,出現以下編譯器錯誤。

爲「UITableView的」不可見@interface聲明選擇...

我甲肝不知道我下一步應該怎麼做。任何幫助,將不勝感激。

謝謝。

+1

什麼是錯誤消息的一個部分。您忽略了重要的部分:-) – Fogmeister

+0

您爲什麼不按照這種方式閱讀文檔?另外,這太基本了 - 你甚至不知道調用方法的正確語法。 – 2013-01-09 12:12:14

+0

@ H2CO3我假設你是downvoter。也許它對你來說太基本了。但是我幾個星期前剛剛開始iOS開發。 – Isuru

回答

2

的方法是這樣的

- (void)deleteRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation 

有兩個參數在這裏看到Apple UITableView Document

但你已經使用類似的是以上三個參數和withRowAnimation爲BOOL但它不是BOOL。

嘗試這樣:

[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade]; 
2

改變這一行:

[self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] 
         withRowAnimation:YES 
       UITableViewRowAnimationFade:UITableViewRowAnimationFade]; 

[self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] 
         withRowAnimation:UITableViewRowAnimationFade]; 
相關問題