gpt4 book ai didi

iphone - 尽管有任何设备旋转,layoutsubviews 只调用一次

转载 作者:行者123 更新时间:2023-12-03 20:22:21 25 4
gpt4 key购买 nike

正如标题所说:我创建一个空的 UIView 子类并向其中添加一个 subview ,创建一个空的layoutSubviews 方法并在其中添加一个断点。然后我构建项目,并在layoutSubviews 方法中加载 View 时停止模拟。到目前为止一切都很好。我继续模拟并旋转设备(假设 View Controller 设置为允许任何方向),但是尽管我可以看到我的对象如何旋转,但layoutSubviews 永远不会再次被调用。有什么想法吗?

好的,我将简化我的问题:如何创建带有一些 subview 的自定义 UIView 并使其响应设备方向?我不需要使用drawRect或任何东西,只需子类化UIView,添加几个子View并在设备旋转时处理它们。

最佳答案

您是否尝试在 UIView 上设置 autoresizingMask ?例如如下:

someView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

来自UIView documentation :

'When a view’s bounds change, that view automatically resizes its subviews according to each subview’s autoresizing mask'

如果将 autoresizingMask 设置为 None 以外的值,则意味着当 View 边界更改时,始终会调用 layoutSubviews 方法。

关于iphone - 尽管有任何设备旋转,layoutsubviews 只调用一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5031292/

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