0

我有一個UItableView,使用UIStoryboard和Core Data。在iPhone上,UITableView加載正常,但不在iPad上。在iPad上使用故事板UITableView不加載單元格

tableViewController更新navBar標題並正確設置toolbarItems,所以非常確定故事板文件正常加載。 TVC加載時,我打印出應填充表格的項目數(正確值),但numberOfRowsInSection不顯示任何項目。

在TVC內部,沒有以設備爲中心的代碼路徑。故事板中的委託和數據源被連接起來,Storyboard ID被設置,TV子類也被設置。

我在這裏完全損失。如果需要發佈特定的代碼,請在評論中告知我。

AppsListTableViewController *appsList = (AppsListTableViewController *)[self appListTableViewController]; 
     UINavigationController * masterNavController = [[UINavigationController alloc] initWithRootViewController:appsList]; 
     masterNavController.toolbarHidden = NO; 
     masterNavController.navigationBar.barStyle = UIBarStyleDefault; 

     if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) { 
      BugsForAppDetailTableViewController *bugsForApp = (BugsForAppDetailTableViewController *)[self bugsForAppTVC]; 

      [appsList setDetailViewController:bugsForApp]; 

      UINavigationController * detailNavController = [[UINavigationController alloc] initWithRootViewController:bugsForApp]; 
      detailNavController.toolbarHidden = NO; 
      detailNavController.navigationBar.barStyle = UIBarStyleDefault; 

      [self.splitViewController setViewControllers:@[masterNavController, detailNavController]]; 
      self.splitViewController.delegate = appsList;  
     } 

     else if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPhone) { 
      [_drawerController setCenterViewController:masterNavController]; 

      [_drawerController closeDrawerAnimated:YES completion:^(BOOL finished) { 
       if (finished) { 

       } 
      }]; 
     } 

而且bugsForAppTVC吸氣

- (BugsForAppDetailTableViewController *)bugsForAppTVC { 
    if (_bugsForAppTVC == nil) { 

     UIStoryboard *storyboard = nil; 
     if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) { 
      storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil]; 
     } else { 
      storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil]; 
     } 

     BugsForAppDetailTableViewController * centerViewController = (BugsForAppDetailTableViewController *)[storyboard instantiateViewControllerWithIdentifier:@"BugsForAppDetailTableViewController_ID"]; 
     [centerViewController setMOContext:[NSManagedObjectContext MR_defaultContext]]; 


     _bugsForAppTVC = centerViewController; 
    } 

    return _bugsForAppTVC; 
} 

回答

0

你需要比較關於與iPad的故事板的表視圖控制器在iPhone故事板的設置。檢查項目:

  • delegate設置
  • datasource設置
  • 數據源提供預期的核心數據對象
  • 控制器子類設置正確
  • 細胞亞類設置正確
  • 小區標識正確
  • 表如有必要,請正確定義IBOutlet
+0

感謝回覆@mundi,做了以上,沒有任何影響。我還可以做些什麼?數據源的確提供了這些對象,但tableView不會在iPad上顯示它們。 iPhone正常工作。 –

+0

更新。我試圖使用標準的UITableViewCell,認爲tableViewCell子類存在問題。依然沒有。就好像TableView拒絕填充一樣。 –

+0

它必須是你的iPad故事板。嘗試將所有內容與iPhone版本進行比較,包括字體顏色等。 – Mundi

相關問題