【发布时间】:2013-09-11 20:38:37
【问题描述】:
这是一个在屏幕顶部显示蓝色视图的简单程序。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window.backgroundColor = [UIColor whiteColor];
UIViewController* vc = [[UIViewController alloc] init];
CGFloat y = 20;
if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_6_1) {
y = 0;
}
UIView* sample = [[UIView alloc] initWithFrame:CGRectMake(0, y, 768, 100)];
sample.backgroundColor = [UIColor blueColor];
[vc.view addSubview:sample];
self.window.rootViewController = vc;
[self.window makeKeyAndVisible];
return YES;
}
如果 iOS 版本为 7 或 6 及以下,我有逻辑将 y 变量设置为 0 或 20。有没有更好的方法来做到这一点?
【问题讨论】:
-
ios7 指南包括一些新的属性,这些属性可以在控制器上设置,允许视图占状态栏。但是,由于它是 NDA 的,我将向您推荐他们的文档,该文档可从开发门户访问。
-
您是否尝试过简单地将其固定在顶部?
标签: ios objective-c cocoa-touch ios6 ios7