我在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中的视图。结果是靠近窗口顶部:
alt text http://img.skitch.com/20090718-tpgya2nt4yeadacgs54dh8syp2.png
如何让我的观点改变位置?
此致
答案 0 :(得分:10)
这是真正的答案。 dot before(void)实际上是一个破折号。
- (void)viewWillAppear:(BOOL)animated {
// to fix the controller showing under the status bar
self.view.frame = [[UIScreen mainScreen] applicationFrame];
}
答案 1 :(得分:1)
检查在界面构建器或代码中如何定义视图的大小。确保它占据分配给状态栏的20个像素,即高度不应超过460。
答案 2 :(得分:1)
在Interface Builder中,确保视图属性中“模拟接口元素”下的“状态栏”未设置为“无”。
答案 3 :(得分:0)
解决方案是在旧的UINavigationViewController中加载UIViewController。这样UIViewController保持其原来的位置。谢谢你的帮助