objective-c - UINavigationBar 不隐藏在 iPad 中但隐藏在 iPhone 中

标签 objective-c xcode ios6 uinavigationbar xcode4.5

大家好,我正在制作一个通用应用程序,iPadViewController 类的 UINavigationBar 的行为不起作用。我在谷歌上搜索了很多并尝试了许多解决方案,但对我不起作用。 UINavigationBarsetHidden 属性在 iPad 上不起作用,但在 iPhone 上运行良好。 UINavigationBar 在 iPad 中不隐藏 我使用以下方法使其隐藏,但所有这些方法在 iPad 中都失败了,但这些在 iPhone 中有效:-

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

self.navigationController.navigationBarHidden = YES;

还有一点,当我从第一个 viewController 转到另一个第二个 ViewController 并且当我从第二个 ViewController 弹出时,它会转到不同的 ViewController 类不是第一个 ViewController 类。

Here's the pastebin link to the ViewController Code:-

最佳答案

首先,您确定您起诉的是 UINavigationController,而不是 UISplitViewController(正如 Shivan 正确指出的那样)?另外,您确定您正在从主要胎面运行隐藏 Action 吗?

无论如何,我找到了这个,这可能对你有帮助;

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];
}

关于objective-c - UINavigationBar 不隐藏在 iPad 中但隐藏在 iPhone 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13947542/

相关文章:

ios - 缩放后如何将 View 位置重置为原点

ios - iOS 和 objective-c 中面向对象的代码重用

iphone - CGRectUnion() 的相反结果是什么?

objective-c - 二阶 IIR 滤波器,巴特沃斯带通 (EQ) 的系数?

iphone - 以编程方式在底部的 UIToolbar

ios - 如何使用 RCT_EXPORT_MODULE React Native

xcode - 将自定义 View 打印到打印机时出现问题

ios - Xcode PDFKit 表单自动计算

ios - SpriteKit 错误地检测到多重碰撞

objective-c - 没有 UITableViewController 的 UIRefreshControl