gpt4 book ai didi

iphone - 处理 IB 中横向/纵向差异的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-03 18:36:51 25 4
gpt4 key购买 nike

我有一个支持横向和纵向查看的 View ,当您从一个 View 切换到另一个 View 时,所有控件都会移动。我目前正在通过在用户旋转手机时设置每个控件的 .center 来实现这一点。问题是这很乏味,并且需要大量代码,而且似乎违背了使用 Interface Builder 的初衷。

我的问题是:Interface Builder 中有没有一种方法可以让一个 View 支持多种外观(一个用于横向,一个用于纵向)?如果不是,其他人如何通过 IB 做到这一点?您设置了 2 个 View 吗?

编辑:只是为了澄清我的横向和纵向 View 看起来不同,我不需要直接转换,实际上我在横向模式下以不同的方式显示数据

最佳答案

必要时,我将 UIView 对象添加到 IB 中隐藏的 View 中。给它一个漂亮的背景颜色,这样你就可以看到它,并将它一直发送到背景。然后,当您需要设置对象的框架时,请使用该 View 的框架。如果您有很多,您可以考虑使用 UILabel 来代替,这样您就可以在 IB 中给它一个可见的名称。

如果您担心内存问题,只需删除 ViewDidLoad 中所有这些额外的 UIView 并将其帧值存储在成员 CGRect 中即可>s。当然,只有当您没有任何 View 在旋转时自动调整大小或重新定位时,这才有效,在这种情况下,您可能无论如何都不应该这样做。我这样做是为了出于任何原因调整大小/重新定位,而不仅仅是在屏幕旋转时。

关于iphone - 处理 IB 中横向/纵向差异的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/185463/

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