[[UIScreen mainScreen] bounds]返回值是否响应方向?

4
基本上我的问题是:CGRect边界随屏幕方向改变还是静态的?谢谢!
2个回答

6

刚刚在iPhone模拟器上测试了一下 - 无论是横屏还是竖屏,它始终返回相同的值

{{0, 0}, {320, 480}}


-1
我创建了一个属性来返回屏幕边界,考虑到设备的方向。
- (CGRect)boundsWithRespectToOrientation
{
    CGRect bounds = self.bounds;

    if (UIInterfaceOrientationIsLandscape([[UIApplication sharedApplication] statusBarOrientation]) && bounds.size.height > bounds.size.width)
        bounds = CGRectMake(bounds.origin.x, bounds.origin.y, bounds.size.height, bounds.size.width);
    else if (UIInterfaceOrientationIsPortrait([[UIApplication sharedApplication] statusBarOrientation]) && bounds.size.width > bounds.size.height)
        bounds = CGRectMake(bounds.origin.x, bounds.origin.y, bounds.size.height, bounds.size.width);

    return bounds;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接