2011-10-27 4 views
0

私は、それを設定する配列に新しいオブジェクトを作成した後に、rootViewControllerのtableViewを取得して再ロードしようとしています。Reload table rootViewControllerのデータを表示

私はrootVIewControllerの私のviewDidLoadに次のように使用したい:

[tableView reloadDate];

をしかし、私はエラーを取得:

Use of undeclared identifier "tableView"

私が宣言されていないので、それはだと思いますviewDidLoadメソッドの後までオブジェクトビューを表示します。だから、テーブルをリフレッシュするために他にどのようなオプションが必要ですか?

おかげ

+0

この場合の 'tableView'はivarです。私は、あなたがプロパティ 'tableView'を持っていると仮定します。 '[self.tableView reloadData];と書こうとしてください。 – beryllium

答えて

0

あなたはリロードすることを伝えることができないよりも、あなたは、のtableViewを宣言していない場合。アプリケーションのアーキテクチャを取り巻く問題があります。「rootViewCOntroller」と言えば、アプリケーションRVCを指しているのでしょうか?もしそうなら、テーブルビューをプログラムでインスタンス化するのか、.xib/outletからアクセスするのですか?

XIBにアクセスしている場合は、プロパティアウトレット[[self tableView] reloadData]を呼び出す必要があります。

プログラムでテーブルビューを作成する場合は、テーブルビューを作成する場合は、リロードを呼び出す前に作成する必要があります。ほとんどの場合、そのtableViewを指すRVCクラスのプロパティを定義する必要があります。自分のコードで行ったように直接アクセスするのではなく、[[self tableView] reloadData]を呼び出すことになります。

+0

私は奇妙な言葉を残念に思っています。(obj-cの新機能です)、私が参照しているアプリです。私はプログラムでtableViewをインスタンス化しています。 – novicePrgrmr

+0

あなたが必要とするよりも遅くあなたのtableViewをインスタンス化しているように聞こえます。単純にコード内にテーブルを作成していないという動機づけはありますか?私はまた、配列に新しいオブジェクトを追加する方法は、RVCs viewDidLoadに負担をかける方法についてはっきりしていません...画面上にテーブルがあると仮定すると、新しいモデルオブジェクトが配列に追加された場合は、 (または、[tableView insertRowsAtIndexPaths]を使用してください)...あなたのアーキテクチャは見えませんが、配列に何かが追加されるまでには、viewDidLoadは長くなくなりました... – isaac

+0

私の問題はオブジェクト別のクラスの配列に追加されているので、あるクラスから別のクラスのreloadDataを取得する方法がわかりません – novicePrgrmr

関連する問題