我有一个相当琐碎的例子,其中我编写了一个相当简单的布局:
- (void)applicationDidFinishLaunching:(UIApplication *)application
{
self.window.rootViewController = self.someController;
...现在的问题是,我的视图控制器的内容低于statusbar (20 my )。
推荐的方法是手动调整视图控制器的大小并将其移动到底部,还是有任何更明智的方法来处理这个问题?
注意:我做,而不是想使用UINavigationController。
编辑以澄清一些更多的代码:
- (void)applicationDidFinishLaunching:(UIApplication *)application
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.menuController = [[MenuController alloc] init];
CalendarViewController* center = [[[CalendarViewController alloc] init] autorelease];
IIViewDeckController* rootController = [[IIViewDeckController alloc] initWithCenterViewController:center leftViewController:self.menuController];
rootController.leftLedge = [[UIScreen mainScreen] bounds].size.width - 320.0;
rootController.delegate= self.menuController;
self.window.rootViewController = rootController;
[self.window makeKeyAndVisible];
}如您所见,我使用IIViewDeckController (链接)作为根控制器。目前的情况如下:

发布于 2014-11-24 09:17:30
在viewDidLoad中使用此代码
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
if([self respondsToSelector:@selector(edgesForExtendedLayout)])
self.edgesForExtendedLayout=UIRectEdgeNone;
}如果你仍然面临同样的问题,请告诉我。
发布于 2014-11-25 03:35:12
正确的方法是将所有视图与视图控制器的topLayoutGuide对齐。布局指南将处理将视图向下推到状态栏、调用栏,以及如果您稍后移动到导航控制器。
https://stackoverflow.com/questions/27101198
复制相似问题