2

AppDelegateで、次を使用します。

    ActivitiesViewController *acController = [[ActivitiesViewController alloc] initWithNibName:@"ActivitiesView" bundle:[NSBundle mainBundle]];

    UINavigationController *acNavController = [[UINavigationController alloc] initWithRootViewController:acController];

    [self.tabBarController setSelectedIndex:0];     
    [self.tabBarController setSelectedViewController:acNavController];

TabBarControllerのビューを切り替えるには。その結果、ウィンドウの上部が閉じます。

代替テキストhttp://img.skitch.com/20090718-tpgya2nt4yeadacgs54dh8syp2.png

ビューを正しい位置にするにはどうすればよいですか?

よろしく

4

4 に答える 4

10

これが本当の答えです。 (void)の前のドットは実際にはダッシュです。

- (void)viewWillAppear:(BOOL)animated {
    // to fix the controller showing under the status bar
    self.view.frame = [[UIScreen mainScreen] applicationFrame];
}
于 2010-05-23T22:19:23.767 に答える
1

ビューのサイズがInterfaceBuilderまたはコードでどのように定義されているかを確認してください。ステータスバーに割り当てられた20ピクセルを考慮していることを確認してください。つまり、高さは460を超えてはなりません。

于 2009-07-18T16:16:13.360 に答える
1

Interface Builderで、ビューの属性の「SimulatedInterfaceElements」の下にある「StatusBar」が「None」に設定されていないことを確認してください。

于 2009-07-18T22:00:17.363 に答える
0

解決策は、UIViewControllerを古いUINavigationViewControllerにロードすることでした。このようにして、UIViewControllerは以前の位置を維持します。ご協力いただきありがとうございます

于 2009-07-19T08:41:21.550 に答える