iphone - UIView 在转换 subview 时自动调整大小

标签 iphone objective-c ios

我正在尝试提供旋转支持,但是在两个 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/

相关文章:

iphone - 如何在iOS5中使用CIColorMatrix?

iphone - 如何访问 UINavigationController 中以前的 View 元素

ios - 当我选择一个 UITableViewCell 时,我的 View Controller 标签是一个 Action

ios - 如何使用 NSFetchedResultsController 返回给定谓词的关系属性的总计

IOS在一个类中多次使用单个dispatch_group

iphone - 动态改变原型(prototype)单元的高度

iphone - 在 iOS 和 Android 上使用 Google map View

iphone - 从 key 链中的 key 对中提取公钥

iphone - 在 IOS 中使用 native 控件进行本地化

iphone - iPad UISplitViewController 多 Root View