UINavigationController自动调整视图行为

时间:2010-02-25 01:43:07

标签: iphone cocoa-touch uikit view dynamic-resizing

我已经阅读了Apple关于UINavigationController调整大小行为的文档,直到现在它还没有出现太多问题。

我有以下代码来设置我的UINavigationController视图:

navController.view.frame = CGRectMake(0, 40, 320, 420);

这是足够的,直到视图被模态视图遮挡,此时视图被调整为viewWillAppearviewDidAppear调用之间的默认大小(因为UINavigationController继承自UIViewController)

我试图在UINavigationController上方显示横幅(在剩余的40 x 320空间内),但如上所述,此横幅一直模糊不清。

有没有办法压制UINavigationController的调整大小行为而不用自己子类化UIViewController?

2 个答案:

答案 0 :(得分:2)

在界面构建器中,您可以取消选中自动调整大小复选框。

在代码中,它是

[myNavController.view setAutoresizesSubviews: NO];

答案 1 :(得分:0)

我试试

myNavController.superview.autoresizesSubviews = NO

显然检查myNavController.autoresizingMask

作为最后的手段,继承其superview并重新实现layoutSubviews