我不敢相信这是不可能的。这只是每个人都必须要求的东西之一。
所以这:
[UIScreen currentScreen] bounds];
在我的 iPhone 上返回 320 的宽度,无论手机是纵向还是横向。所以我做了这个辅助方法:
+(CGRect)screenFrame {
CGRect frame = [UIScreen mainScreen].bounds;
if (UIDeviceOrientationIsPortrait([[UIDevice currentDevice] orientation])) {
return frame;
}
else {
CGRect newFrame = CGRectMake(frame.origin.x, frame.origin.y, frame.size.height, frame.size.width);
return newFrame;
}
}
效果很好,除非设备平放时,显然这使它认为它是横向的,即使屏幕没有变成横向。
我该如何调整它以使其正常工作?