8

私は iOS Objective-C 開発に比較的慣れていないので、解決策が見つからない問題に遭遇しました。

Table View Controller2 つのプロトタイプ セルがあり、問題なく配置されています。これTable View Controllerは 3 つのうちの 1 つで、Tab ViewsView送信する にはTab ViewsがありNavigation Controllerます。これは、 内のビューにTab ViewsNavigationバーがあることを意味します。「戻る」ボタンが期待どおりに機能し、バーが所定の位置にあるという点で、バーは正常に機能します。ただし、(少なくともリスト ビューでは)Navigation Barは完全には認識されません。タイトルは表示されず、テーブル セルはナビゲーション バーの下ではなく、ステータス バーのすぐ下から始まります。

ここに問題を示すスクリーンショットがいくつかあります: Xcodeに表示されるもの(私が期待すること) Xcode に表示されるもの (私が予想すること) テスト デバイス (iPhone 4、iOS 7.0.4) に実際に表示されるもの そしてデバイスでは、これが実際に表示されるものです - [戻る] ボタンが所定の位置にあり、正常に動作していますが、タイトル フィールドはなく、テーブル セルスタートが高すぎる。

と を追加しようとしましNavigation BarたがNavigation Items、 を追加するNavigation Itemと Xcode でタイトルを付けることができますが、テストではまだデバイスに表示されません。また、このビューの直前に別のビューを追加しようとしましNavigation Controllerたが、それでも問題は解決せず、階層のさらに下にナビゲーションの問題が発生しました。

もっと情報を投稿する必要があるかどうか言ってください。ありがとう!

4

4 に答える 4

2

あなたの階層を

NavigationController -> ViewController  -> TabBarController -> ViewController1
                                                            -> ViewController2
                                                            -> ViewController3

viewcontroller1 でナビゲーション項目を非表示にする場合は、次の行を追加します。

 self.navigationController.navigationBarHidden = YES;

viewcontroller2にタイトルを表示したい場合は、以下の行をviewcontroller2に追加してください。

self.navigationController.navigationBarHidden = NO; //add this if you hide navItem viewcontroller1
[self.parentViewController.navigationItem setTitle:@"Title"];

viewcontroller3 で戻るボタンを非表示にしてタイトルを表示する場合は、次の行を追加します。

 self.navigationController.navigationBarHidden = NO;
[self.parentViewController.navigationItem setTitle:@"Contacts"];

self.parentViewController.navigationItem.hidesBackButton=YES; 

タブの切り替え時に表示に問題がある場合は、この行を ViewdidLoad の代わりに viewdidAppear メソッドに追加します。

于 2015-01-07T07:17:42.027 に答える
0

私は同じ問題を抱えていましたが、この問題を作成するために私がしたことは、私のボタンアクションがテーブルコントローラーではなく実際のテーブル自体に接続していたことです。モーダル アクションを削除し、テーブル コントローラーに新しいアクションを作成したところ、問題が修正されました。

于 2014-11-17T05:13:02.443 に答える