3

こんにちは皆さん、私はユニバーサルアプリを作成していますが、クラスのUINavigationBaronの動作が機能していません。グーグルでよく調べて、多くのソリューションも試しましたが、うまくいきませんでした.iPadでは機能しないが、iPhoneでは正常に機能するというプロパティ. iPadで非表示にしない次の方法を使用して非表示にしますが、これらはすべてiPadでは失敗しましたが、iPhoneでは機能しています:-iPadViewControllersetHiddenUINavigationBarUINavigationBar

[self.navigationController setNavigationBarHidden:YES animated:YES];

self.navigationController.navigationBarHidden = YES;

そして、この 1stviewControllerから別の 2ndViewControllerに移動するとき、および 2nd からポップすると、1stクラスViewControllerではなく別のクラスに移動するもう 1 つのポイント。ViewControllerViewController

ViewController コードへのペーストビン リンクは次のとおりです。

4

1 に答える 1

1

まず、UINavigationController を訴えているのですか? UISplitViewController ではありません (Shivan が正しく指摘しているように)。また、メイン トレッドから非表示アクションを実行していますか?

いずれにせよ、私はこれを見つけました。

if( UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad )
{
    CGRect rect = self.navigationController.navigationBar.frame;
    rect.origin.y = rect.origin.y < 0 ?
        rect.origin.y + rect.size.height
    :   rect.origin.y - rect.size.height;

    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.2];
    self.navigationController.navigationBar.frame = rect;
    [UIView commitAnimations];
}
else 
{
    [self.navigationController setNavigationBarHidden:shouldHide animated:YES];
}
于 2012-12-19T08:04:17.607 に答える