在阅读了关于SO和developer.apple.com的UIView
的autoresizingMask
后,我仍然不清楚目的是什么。在什么情况下需要设置此属性?
最佳答案
是的,如果您不想手动调整 View 的大小,通常需要进行设置。请注意,它对于 subview (即那些不能占据整个屏幕的 View )最有用,而不是应用程序的主 View 。
在以下情况下,通常可能需要调整 View 的大小:
例如,假设您的 View 上有两个按钮,一个在左上角,另一个在右上角。为了在 View 从纵向过渡到横向时使按钮变宽,需要将“FlexibleLeftMargin”设置为右侧按钮,将“FlexibleRightMargin”设置为左侧按钮。
编辑:如果在旋转设备或添加新的 subview 时看到怪异的孔洞或重叠,则autoresizingMask也是要查看的第一件事。通常,为 subview 正确设置这些 mask 可以使您在两个方向上都能获得漂亮的 View ,而不必手动布置 subview -但通常需要进行一些实验。
Edit2 :(因为这仍然在收集投票)自动调整大小的 mask 现在大部分被“自动布局”所取代,这允许对 View 的大小和位置进行更加灵活的约束。话虽如此,对于动态添加的 View ,translatesAutoresizingMaskIntoConstraints仍然偶尔会有用。
关于ios - UIView的autoresizingMask的目的是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7337439/