相关疑难解决方法(0)

以编程方式对Interface Builder/xib/nib自动调整掩码

我在(可能是错误的)假设中,在xib中启用右边距指示符等同于使用UIViewAutoresizingFlexibleLeftMargin内部代码等等.

所以,我曾经根据这个快照思考: 在此输入图像描述

今天晚些时候我不得不交叉检查,偶然发现了这个帖子.

还有苹果文档,标题为标题部分 - "使用自动调整规则自动处理布局更改"链接:https://developer.apple.com/library/content/documentation/WindowsViews/Conceptual/ViewPG_iPhoneOS/CreatingViews/ CreatingViews.html

所以我现在脑子里有一个更新的概念,关于如何以编程方式设置自动调整掩码等同于xib设置:

场景1:仅设置(UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight)相当于:

(UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight)

在XIB?

场景2:(UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin)代码设置相当于:

(UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin)

在XIB?

我的2个更新方案是否正确?我现在理解了吗?

cocoa-touch uiview ios autoresizingmask

217
推荐指数
2
解决办法
7万
查看次数

UIView和AutoresizingMask被忽略了

第一次发布堆栈溢出.

我花了好几个小时搜索了许多谷歌搜索,并且在这一点上,几乎记住了UIView和UIViewController类的参考文档.无论我做什么,我的应用程序都无视我调整方向更改(或任何其他框架大小修改)的意见.

没有涉及笔尖或笔尖; 我以编程方式构建我的所有视图和viewcontrollers,它们(viewcontrollers)都是我创建的三个自定义UIViewController子类之一的子类.这些超类在其loadView:方法中有以下几行...

[self setView:[[[UIView alloc] initWithFrame:[self viewFrame]] autorelease]];
[[self view] setAutoresizingMask:(UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight)];
[[self view] setAutoresizesSubviews:TRUE];
Run Code Online (Sandbox Code Playgroud)

在所有适当的setter方法中(换句话说,无论我在哪里添加一个subView),我都在重复应用autoresizingMask的步骤.似乎无论我做什么,结果总是一样的 - 我点击构建,点击调试,等待应用程序启动,旋转设备,然后!视图旋转但根本不调整大小.

我在这里错过了什么?这可能是我没看到的明显的东西.任何帮助都非常感谢,提前感谢.

uiviewcontroller uiview autoresizingmask

8
推荐指数
1
解决办法
1万
查看次数