我有一個Xcode應用程序,創建一個tableview,然後用sqlite數據庫中的數據填充這個,這完美的作品,並允許我推動數據到一個新的視圖和刪除等,self.tableView reloadData不工作viewWillAppear
此tableview是加載在選項卡欄控制器上的第一個視圖。當我移動到另一個視圖上的同一個控制器,即創建一個運動員,在這個視圖中,我可以添加一個新的運動員到數據庫(這工作正常),但當我回到標籤欄控制器上的tableview時,該表是相同的,我必須註銷並重新登錄以查看錶中的更改,
我已經在viewWillAppear函數中嘗試過[self.tableView reloadData],但這沒有任何作用。我知道這個函數正在被調用,因爲我爲了安心而放置了一個NSLog。
我發現我認爲可能是這裏的解決方案,但我不能得到它的工作!
viewWillAppear, viewDidAppear not being called, not firing
我會後我下面的代碼和故事板作爲即時通訊的屏幕截圖相信這是我的設置,才造成了這個錯誤控制器的好辦法。任何幫助將非常感激,因爲我在危機階段,現在是:d
-(void)viewWillAppear:(BOOL)animated {
//[super viewWillAppear:animated];
//[self.tabBarController viewWillAppear:animated];
[self.tableView reloadData];
NSLog(@"i just ran viewwillAppear");
}
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
athleteObject *athObj3 = [athletes objectAtIndex:indexPath.row];
athleteIdDelete = athObj3.athId;
[self openDatabase];
[self deleteAthleteFromDataBase];
[athletes removeObjectAtIndex:indexPath.row];
[tableView reloadData];
}
reloadData工作在我commitEditing功能(這將更新的tableview當我刪除通過刷卡的條目)
任何幫助將非常感謝,il發佈下面的屏幕截圖。
(無法弄清楚如何加載如果甚至有可能截圖)
乾杯,爲您提供幫助!我有一個名爲getDataIntoAthleteArray的函數,它從sqlite數據庫提取數據並將其存儲在數組中。我只需要在重新加載表格中的數據之前調用這個函數。你提到它後,它是非常有意義的,我只是不能看到tres的木材:D我會upvote,但我是這個網站上的noob:( –
很高興它有幫助。 – Pablo