- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
第一次在堆栈溢出问题上发帖。
我花了几个小时搜索了许多 Google 搜索,此时,我几乎记住了 UIView 和 UIViewController 类引用文档。无论我做什么,我的应用程序都会忽略我调整方向变化 View 大小的努力(或与此相关的任何其他框架大小修改)。
不涉及 nib 或 xib;我正在以编程方式构建所有 View 和 View Controller ,它们( View Controller )都是我创建的三个自定义 UIViewController 子类之一的子类。这些父类(super class)在其 loadView: 方法中具有以下几行...
[self setView:[[[UIView alloc] initWithFrame:[self viewFrame]] autorelease]];
[[self view] setAutoresizingMask:(UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight)];
[[self view] setAutoresizesSubviews:TRUE];
在所有适当的 setter 方法中(换句话说,无论我在何处添加 subview ),我都会重复应用 autoresizingMask 的步骤。似乎无论我做什么,结果总是相同的——我单击“构建”,单击“调试”,等待应用程序启动,旋转设备,然后就这样! View 旋转但根本不调整大小。
我在这里缺少什么?这可能是我没有看到的显而易见的事情。非常感谢任何帮助,提前致谢。
最佳答案
嗯,果然是我自己的错。
第一课: 熬夜尝试修复损坏的代码对自己没有任何好处。休息一下!多喝水!如果你在睡前继续强制你的大脑执行复杂的算法策略和逻辑,你可能只会让事情变得更糟。
事实证明,我在 View 层次结构的底部有一个流氓 UIView,它根本没有设置 autoresize 属性。我以为我已经把所有的东西都看完了,但结果发现我漏掉了一件。 (只是一个小 View ,一整天的拍摄!)
对于后来遇到类似挫折的任何人,我可以说,Autoresizing
确实按照记录的那样工作。如果您认为“某些内容没有被调用”,那么您可能找错地方了。此外,UIViewAutoresizingMask
枚举常量的使用方式与 Interface Builder 中的使用方式并不完全相同。在IB中,您“锁定”边距,而在以编程方式设置边距时,默认情况下假定锁定边距,您可以通过将其设置为“灵活”来“解锁”它们。例如,仅设置FlexibleWidth和FlexibleHeight位相当于启用IB中的所有自动调整大小选项。通过添加任何边距掩码(即UIViewAutoresizingFlexibleLeftMargin
),您将“取消选择”IB 中相应的边距自动调整大小选项。 (我见过许多其他帖子,这似乎是一些人的主要困惑点。)
TextField
delegate
方法。所以也许是另一篇文章的主题......
无论如何,感谢所有参与 StackOverflow 的人!
关于UIView 和 AutoresizingMask 被忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3741566/
我实现了一个小的 viewDidLoad() 来显示自动调整大小的图片,但它不起作用,请有人帮助我并说出错误是什么这段代码在第 3 行和第 4 行??? imageView = [[UIImageVi
在包含多个 subview 的 View 中,其中一个 subview 应与父 View 的顶部和底部保持固定的非零距离。在这些图像中,该 View 显示为灰色: 根据文档,此 View 应具有 UI
我试图让它与 ViewController View 中的代码一起工作: 但我无法让它工作。 我试过了 -(void)loadView { UIView *contentView = [[[U
我以编程方式在屏幕上放置了一个带有框架(0、100、50、50)的 UIView,并将其 autoresizingMask 设置为 UIViewAutoresizingFlexibleLeftMarg
我在 LeftMenu VC 的 tableView 中使用 autoResizingMask,如果我将表格拖动到间隙,效果很好 - 它可以很好地调整大小,但随后我放开我的 tableView,它会恢
LiveStreamTable=[[UITableView alloc]initWithFrame:CGRectMake(0, 0, 768, 960)]; LiveStreamTable.autor
如何在 UIView 子类中使用 NSLayoutConstraints(或 anchor )编写以下代码? func commonInit() { aView
我有一个 View 出现在其父 View 纵向模式的中心,我应该使用什么 autoresizemask 以便它也出现在横向模式的中心。它的大小应该保持不变。我只希望它的原点应该在该点自动移动,以便它出
我想处理 autoresizingmasks,但由于某种原因,我无法显示对话。我的 IB 的尺寸检查器如下所示: 当我点击另一个检查器——属性、连接等时——自动调整掩码对话框/检查器会出现一瞬间(时间
我以编程方式在屏幕上放置了一个 UISegmentedControl(独立的,而不是作为导航栏的一部分),并将其 autoresizingMask 设置为 UIViewAutoresizingFlex
我已设置应用程序以便自动旋转。像 tableviewcontrollers 和 tabbarcontrollers 这样的东西会自动调整它们的大小,而不需要我编写任何代码。但是,当设备转向横向时,我需
第一次在堆栈溢出问题上发帖。 我花了几个小时搜索了许多 Google 搜索,此时,我几乎记住了 UIView 和 UIViewController 类引用文档。无论我做什么,我的应用程序都会忽略我调整
我有一个显示自定义单元格的 View 表格 View 。这些单元格有一个 UIImageView,如果设备处于横向模式,则需要对其进行缩放。 我将tableView的autoresizingMask设
我正在尝试使用该代码创建一个带有左插入分隔符的 View (如 iOS 7 中的表格 View 单元格): UIView *container = [[UIView alloc] initWithFr
我不知道如何在固定左右边距的情况下调整宽度。 我没有找到任何固定的 led/右边距 API。 最佳答案 在代码中,要使 View 具有固定的左右边距以及灵活的宽度,您可以执行以下操作: UIView
我有一个带有多个标签的自定义 uitableviewcell,我希望其中一些标签能够根据内容(文本)自动调整其框架(宽度)的大小。我不知道如何做到这一点。我尝试设置标签的固定框架并在应用 autore
我在我的代码中使用了这样的东西 Btn.autoresizingMask = UIViewAutoresizingFlexibleTopMargin + UIViewAutoresizingFlexi
我的问题很简单。 我目前正在对 UIButton 进行子类化以创建一些自定义动画。但是,当我将 translatesAutoresizingMaskIntoConstraints 设置为 false
我了解到在单 View 应用程序中设置覆盖整个主视图(全宽和全高)的 UITableView 的正确方法是,在 viewDidLoad: table = [[UITableView alloc] in
我正在尝试使用 inputAccessoryView 来处理 iPhone X。我已经像这样向我的 ViewController 添加了一个 View : 自定义 View 我已经定义了一个导出并连接
我是一名优秀的程序员,十分优秀!