UIScreen主屏幕bounds.size.height总是1024

jdo*_*dog 1 objective-c ios uiscreen cgrectmake

[UIScreen mainScreen].bounds.size.height无论iPad应用程序采用何种布局模式,为什么总是返回1024?

我试图有一个基于布局模式动态生成的自定义视图,我总是得到1024的高度?

+ (CGRect)rectForView {
NSLog(@"The height is %f", [UIScreen mainScreen].bounds.size.height );
return CGRectMake( 0.0f, 0.0f, [[UIScreen mainScreen]bounds].size.width, (([UIScreen mainScreen].bounds.size.height ) - 100));
}
Run Code Online (Sandbox Code Playgroud)

jdo*_*dog 5

这是我做的修复它.

+ (CGRect)rectForView {

if (UIInterfaceOrientationIsLandscape([[UIDevice currentDevice] orientation])) {

    return CGRectMake( 0.0f, 0.0f, [[UIScreen mainScreen]bounds].size.height, (([UIScreen mainScreen].bounds.size.width ) - 100));

}

NSLog(@"The height is %f", [UIScreen mainScreen].bounds.size.height );
return CGRectMake( 0.0f, 0.0f, [[UIScreen mainScreen]bounds].size.width, (([UIScreen mainScreen].bounds.size.height ) - 100));
}
Run Code Online (Sandbox Code Playgroud)