gpt4 book ai didi

iphone - 如何在 viewController 中以编程方式布局 View 大小/位置并顺利处理旋转

转载 作者:行者123 更新时间:2023-11-29 04:55:02 28 4
gpt4 key购买 nike

我正在 ViewController 的 loadView 中以编程方式创建 View 层次结构。我必须手动计算 subview 的布局,因为自动调整大小不适用于我的布局(我已经尝试了很多)。我尝试将布局代码放入从 VC 的 viewDidRotateFromInterfaceOrientation... 调用的辅助方法中,并且该方法有效,但很明显 View 旋转,然后所有内容都卡入到位。从我所看到的,我应该覆盖 layoutSubviews 方法,它会在旋转的同时动画?但由于 layoutSubviews 是一个 UIView 方法而不是 UIViewController 方法,我必须将所有 subview 公开给 View ,以便我可以识别它们并设置布局。我在这里缺少什么?

我还认为,如果我在 - (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientationuration:(NSTimeInterval)duration 期间设置大小会起作用,但由于 ViewController 的 View 没有其框架尚未调整旋转,但布局不正确。

最佳答案

我最终创建了一个 UIView 子类并在其中布置了所有子控件位置。这样,我只需重写 layoutSubviews 方法即可,一切正常。我想这确实是 Apple 的意图,但似乎我见过的大多数代码仅在需要自定义绘图时重写 UIView,而不是用于基本控件放置。

关于iphone - 如何在 viewController 中以编程方式布局 View 大小/位置并顺利处理旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8160867/

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