0

最初のタブにナビゲーションコントローラ付きの単純なタブバーコントローラを作成する方法を追ってきました。ここまではすべて正しく動作していますが、レイアウト上で奇妙な問題が発生することを期待してください。 初めてアプリを起動すると、最初に読み込まれたペン先の上にあるナビゲーションバーが少し外に表示されます。なぜこれが起こるのか分かりません。最初のビューには、モーダル表示を開く「新しいシステムの追加」ボタンがあります。このボタンを押してモーダルビューが表示され、モーダルが元のビューに戻るのを却下した場合、上部のナビゲーションバーが正しく配置/リフレッシュされます。 2番目のTABを押すと同じことが起こります(これは、今の場合はナビゲーションコントローラなしの単純なペンです)。最初のTABに戻ると、ナビゲーションバーが正しい位置に配置されます。ここで 最初の起動時にスクリーンショット:タブバーコントローラ+ナビゲーションコントローラのナビゲーションバーレイアウトの問題

Startup

そして、ここで私が戻って最初のビューに、その後、モーダルビューまたは二TABキーを押すと:

After

コードされますネット上の多数のチュートリアルの1つに続いて簡単に終了します。私はストーリーボードを使用していません。ナビゲーションバーの上部にボタンを追加するだけのカスタマイズがありました:

UIImage *editbuttonImage = [UIImage imageNamed:@"edit_pressed.png"]; 
UIButton *editButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
[editButton setBackgroundImage:editbuttonImage forState:UIControlStateNormal]; 
editButton.frame = CGRectMake(0, 0, editbuttonImage.size.width, editbuttonImage.size.height); 
[editButton addTarget:self action:@selector(leaveEditMode) 
     forControlEvents:UIControlEventTouchUpInside]; 

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] 
              initWithCustomView:editButton]; 

[editButton release]; 
[editbuttonImage release]; 

他の変更はありません。ペン先は、以前から単一のビューで使用されていました。次に、それをTABコントローラ+ナビゲーションコントローラに挿入しようとしました。 必要に応じてコード全体を投稿することができます。 「システムを選択」には、これらの画像に空白も表示されていないテーブルビューがあります。

ありがとうございました!

シモン

+0

が、私は問題を自分で解決してきたのに役立ちます。起動時に、ステータスバーを非表示にして、アプリケーションデリゲートに再度表示するように設定しました。使用されるディレクティブ:[[UIApplication sharedApplication] setStatusBarHidden:NO]; **後** ** navControllerをサブビューとして追加しました。また、ナビゲーションコントローラBARはステータスバーの下に表示されませんでした。 – Simon

答えて

0

私はこの問題を自分で解決しました。起動時に、ステータスバーを非表示にして、アプリケーションデリゲートに再度表示するように設定しました。使用ディレクティブ:

[[UIApplication sharedApplication] setStatusBarHidden:NO];

はがサブビューとしてからNavControllerを追加した後ました。また、ナビゲーションコントローラBARはステータスバーの下に表示されませんでした。

ホープこれは、誰かが:)

乾杯、サイモン