gpt4 book ai didi

ios - 自动布局中的 viewDidLayoutSubviews 在 UIPageViewController 上旋转

转载 作者:可可西里 更新时间:2023-11-01 06:23:10 24 4
gpt4 key购买 nike

我有一个 UIPageViewController,它的 View Controller 包含一个 UIScrollView,其中包含一个 UIImageView。在加载的 View Controller viewWillAppear 中,如果 View 旋转,则边界不正确。这是我根据 this 尝试根据图像大小动态定位 ImageView 的地方。 .我尝试使用 (void)viewDidLayoutSubviews 但我需要调用 [self.view layoutSubviews] 否则我会收到断言错误。当我添加它时,我就不能再缩放 ImageView 了。您可以看到它尝试缩放,但大小调整回最小缩放。

我对自动布局完全陌生,想看看我是否遗漏了什么。

我当前的修复涉及检查框架的边界以查看方向是否与边界匹配。如果是这样,那么我按原样使用边界。如果不是,那么我会在计算中切换高度和宽度。

我想知道如何正确使用 viewDidLayoutSubviews 而不会影响我放大 ImageView 的能力。

从两个答案来看,viewDidLayoutSubviews 可能是布局 View 的错误位置。我试图找到应该在哪里完成并让 View 知道它们的边界和方向,但在它们在屏幕上可见之前。根据我的阅读,我认为那是 viewDidLayoutSubviews 但似乎使用它可能会导致无限循环。

最佳答案

From two of the answers, it looks like viewDidLayoutSubviews maybe the wrong place to layout the views. I'm trying to find where this should be done and have the view's know their bounds and orientation but before they are visible on the screen.

我会将 UIScrollView 子类化并覆盖 layoutSubviews,系统只会在需要时以及所有变量(方向、大小等)为您调用时调用它。 ) 具有适当的值。

关于ios - 自动布局中的 viewDidLayoutSubviews 在 UIPageViewController 上旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22454688/

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