我正在尝试提供旋转支持,但是在两个 UIView 之间转换时,autoResizingMask 属性似乎被忽略了。
这是一个说明问题的视频:
http://www.youtube.com/watch?v=AWtO7J6YNxA
我目前将每个 UIView(父 View 和 subview )设置为:
uiView.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight );
此外,父 View 具有:
self.view.autoresizesSubviews = YES;
最佳答案
当您从 Web View (Google 页面)返回时,您上面提到的两个 View 似乎以纵向模式显示,但设备处于横向模式。如果是这样,您可以在转换到 UIWebView 页面之前存储两个 View 框架坐标(x、y、宽度和高度),并在转换回来时恢复它们。当然,如果设备处于横向或纵向模式,您需要检查返回。
如果您在 PORTRAIT 模式下保存了 Frame 坐标并从 UIWebView 返回到屏幕并且设备处于 PORTRAIT 模式,则只需使用
self.myView.frame = CGRectMake(savedValueOfX,
savedValueOfY,
savedValueOfWidth,
savedValueOfHeight);
如果设备现在处于横向模式,那么像这样恢复它们......
self.myView.frame = CGRectMake(savedValueOfX,
savedValueOfY,
savedValueOfHeight,
savedValueOfWidth);
关于iphone - UIView 在转换 subview 时自动调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11290339/