2011-09-07 27 views

回答

21

是的,如果您不想手动调整视图大小,通常需要进行设置。请注意,它对于子视图(即那些不占用整个屏幕的视图)而非应用程序的主视图最为有用。

视图通常可能需要调整,如果:

  • 设备旋转
  • 一个额外的视图(比方说,广告)被添加到视图中,所以现有的子视图具有较少的可用空间。

例如,假设您有一个包含两个按钮的视图,一个位于左上角,另一个位于右上角。为了使视图从纵向转换为横向时按钮变宽,您需要将FlexibleLeftMargin设置为右侧按钮,将FlexibleRightMargin设置为左侧按钮。

编辑:autoresizingMask也是第一件要注意的事情,如果您在旋转设备或添加新的子视图时看到怪异的洞或重叠。通常情况下,这些子视图掩码的适当设置可以让你在两个方向都能看到漂亮的视图,而无需手动配置子视图 - 但通常需要进行一些试验。

编辑2:(因为这仍然收集upvotes)自动调整掩码现在大多被“自动布局”取代,它允许对视图的大小和位置进行更灵活的约束。这就是说,translatesAutoresizingMaskIntoConstraints对于动态添加的视图仍然有用。

+4

不要忘了双高“通话中”状态栏上海华盈的变化重新调整!您可以通过录制语音备忘录并切换到您的应用程序来轻松地复制此内容。 –

4

的目的是,正确的UIView移动,当它是由于调整大小,方位的变化,呈现出的tableview细胞等的编辑控制