2011-07-09 4 views
0

こんにちは私は最近、この質問を掲載しましたが、非常にひどく問題を説明しましたが、今度はそれをうまく説明します。どのように複数のインターフェイスの必要性に対処するには?

私はそうのような@interfaceを通じて、UITableViewControllerにタブリードの1タブバー、と前にこの過去のプロジェクトを行っている。

@interface NewsViewController : UITableViewController <MWFeedParserDelegate> { 

今、私は私が使用しています同様のプロジェクトをやっています同じコードをたくさん使っていますがタブを使用していないため、UIViewControllerを使ってUIViewControllerを使っています。私は同じUITableViewをロードしたいので、tableViewをIBを使ってプロジェクトに追加しました。私はこの特定のヘッダーの私の元の@interfaceUIViewControllerのように問題を抱えています:

@interface NewsViewController : UIViewController 

だから今、私は同じ@interfaceUIViewController、およびUITableViewControllerをロードするので、その後、彼らは負荷と同じ時間の両方、およびtableViewは、ビューの内側に続いていることに私のインターフェイスを必要としています。

または私はおそらく私が使用している場合は、今のようにtableViewをロードするためにそれを教えてくれます.mファイル、変更の必要があるものがある:

@interface NewsViewController : UIViewController <MWFeedParserDelegate> { 

はエラーが私はtableViewを宣言していない私に言ってます私がUITableViewControllerに変更すると、明らかにビューがロードされません。

アイデア?

+0

なぜ 'UIViewController'と' UITableViewController'を同時にロードする必要がありますか? – Espresso

+0

私はする必要はありませんが、UIViewControlerをロードするだけで、UIKitがそのフレームワークでありインポートされていても、自分のコードでtableViewを認識しません。 –

答えて

0

あなたがちょうどそのInterface Builderで適切なコンセントを接続し、「オリジナル@interfaceは」UITableViewControllerのサブクラスであることを変更することはできません:

@interface NewsViewController : UITableViewController 

あなたはUIViewControllerのサブクラスであるだけNewsViewControllerをロードする場合テーブルビューを持たないのでtableViewを認識しません。UITableViewControllerのサブクラスではありません。

+0

もし私がそれを行ったら、ナビゲーションバーを表示して戻っていかなければならないのですか? –

+0

'NewsViewController'の親がナビゲーションコントローラの場合は、ナビゲーションバーがあります。 – Espresso

+0

@alexの場合、ナビゲーションバーはtableviewcontroller内のナビゲーションコントローラによってのみ処理されます。それはうまくいくはずです。 - > navigatonControllerのpushViewControllerメソッドがここに移動する方法です。 –

0

UITableViewUITableViewControllerの間で混乱していると思います。 UITableViewControllerUIViewControllerのサブクラスで、UITableViewを管理しており、テーブルビューに必要な標準的な動作を追加しています。それはすべてApple UITableViewController Docsに書かれています。

関連する問題