0
#import <UIKit/UIKit.h>

@interface FourthViewController : UIViewController{

//@interface FourthViewController : UITableViewController{

テーブルビューを更新したいので使用しようとしていますが、で作業していてプロパティが のみのためであるため[self.tableView reloadData]、このコード行を入力することさえできません。だから私は賢くしようとしました に変更するだけですが、代わりにこのエラーが発生しました:UIViewControllertableViewUITableViewControllerUIViewControllerUITableViewController

 Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UITableViewController loadView] loaded the "b4k-XH-Uhj-view-V2h-dE-ixJ" nib but didn't get a UITableView.'

UITableViewController は tableView に対しては機能しますが、その逆は機能しないため、これは奇妙ですが、すべて間違っているように見えますか、ここで何が起こっていますか? あなたがそれを求めるなら、より多くのコード=)よろしくお願いします。

4

1 に答える 1

0

UITableViewControllerは、実際にはUITableViewへのアウトレットを含み、UITableViewDelegateとUITableViewDataSourceの2つのテーブルビューデリゲートを実装する単なるUIViewControllerです。

nibファイルのviewcontrollerインスタンスを、標準のUIViewControllerではなくUITableViewControllerに置き換えることを検討することをお勧めします。

または、含まれているUITableViewのアウトレットを作成して、テーブルビューをプロパティとして公開することにより、ForthViewControllerインスタンスを手動で調整することもできます。

ただし、この方法で行う場合は、2つのテーブルビューデリゲートUITableViewDelegateとUITableViewDataSourceをどこか(おそらくForthViewController)に手動で実装し、UITableViewをこれらのデリゲートに手動で関連付ける必要があります。

于 2012-04-26T13:31:20.427 に答える