gpt4 book ai didi

iphone - 从界面生成器更改 View 的两个方向的布局

转载 作者:行者123 更新时间:2023-12-01 19:24:44 24 4
gpt4 key购买 nike

是否可以从界面生成器(XCode 4.1)设置横向和纵向 View 的布局?我问这个问题是因为当我将布局设置为纵向,然后将 View 方向更改为横向并根据横向重新设置布局时,它将与最后一个横向布局保持一致!这意味着,当我切换回纵向时,布局不会改变。

IB对这个问题有什么解决方案吗?

编辑:

我现在理解了这个想法,所以 IB 会给你有限的灵 active 来玩我的两个方向的 View ,它是有限的,因为我无法为 IB 的每个方向为我的 View 生成一个全新的布局,例如,如果我有六个UIButtons (及其阴影 ImageView )放置在纵向上,如下图所示:enter image description here

并为每个按钮和阴影 ImageView 提供所有调整大小的蒙版,如下图所示:

enter image description here

横向的结果将像此屏幕截图一样困惑:

enter image description here

所以我有两个问题:

1)是否可以为这些对象(来自 IB)设置自动调整大小,以便横向 View 与纵向 View 匹配?如果是的话怎么办?

2)我可以(来自IB)设计一个完全不同的横向布局(不影响纵向的原始布局),如下图所示:

enter image description here

如果我不能,我认为解决方案是从代码中创建一个新 View ,这是真的吗?

感谢您的帮助。

最佳答案

要在界面构建器中自动更改 View 的布局,您必须设置 View 的所有图形对象的自动调整大小掩码选项。您可以像这样以编程方式进行操作:

myObj.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin;

或者在每个对象的 Size Inspector 选项卡中使用 Interface builder。你应该看到这样的东西:

enter image description here

当线为红色时,表示如果设备方向改变,边距( 关于对象容器 )将保持不变。在其他情况下,边距将更改以适应 View 容器中的对象放置。

不太可能,当一行不是红色时,这意味着对象的大小将在所有设备方向上保持不变,否则大小将被修改(例如对背景图像有用)

因此,在上面的示例中,对象大小不会改变,并且其容器的左边距和上边距也不会改变。

希望这足够清楚。如果不清楚,请毫不犹豫地使用react

编辑

您只需执行以下技巧即可检查调整大小蒙版的结果,而无需重新编译应用程序:
  • 选择uiviewcontroller主视图(self.view)
  • 转到属性检查器
  • 在“模拟指标”部分,您应该看到一个“方向”项
  • 从“纵向”到“横向”关闭再打开以查看结果 View

  • 编辑1

    如果我正确理解你的意思,我认为你可以这样做:

    enter image description here

    将按钮和阴影 ImageView 放在 View 容器中。然后设置 View 容器自动调整大小,因为您正确知道您的按钮,并锁定有关此 View 容器的按钮和 ImageView 大小/边距。

    那应该行得通。

    关于iphone - 从界面生成器更改 View 的两个方向的布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8312466/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com