【问题标题】:Wrong view size in viewWillTransition method when rotating旋转时 viewWillTransition 方法中的视图大小错误
【发布时间】:2019-01-22 12:53:06
【问题描述】:

我使用 viewWillTransition 来改变视图的框架,如果我的 ViewController 是最上面的,那么一切都很好,这里是旋转时打印的框架

TEST frame: (0.0, 0.0, 768.0, 732.0) / rotate
TEST frame: (0.0, 0.0, 1024.0, 476.0) / rotate
TEST frame: (0.0, 0.0, 768.0, 732.0) / rotate
TEST frame: (0.0, 0.0, 1024.0, 476.0) / rotate

当我的 ViewController 不是最顶部时旋转屏幕时会发生问题,例如某些 ViewController 被呈现/推到它上面。我仍然通过这种方法收到通知,但大小不好。

TEST frame: (0.0, 0.0, 768.0, 732.0) / rotate
TEST frame: (0.0, 0.0, 768.0, 732.0) / rotate
TEST frame: (0.0, 0.0, 768.0, 732.0) / rotate
TEST frame: (0.0, 0.0, 768.0, 732.0) / rotate

我必须使用框架设置视图,因为我使用的是this 库。有什么想法吗?

【问题讨论】:

    标签: ios swift


    【解决方案1】:

    我确实设法通过使用 didLayoutSubviews 方法并在那里更改框架来解决此问题。

    【讨论】:

    • didLayoutSubviews 被多次调用,而不仅仅是在发生旋转时......
    猜你喜欢
    • 1970-01-01
    • 2018-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 1970-01-01
    • 2013-05-01
    • 2012-01-06
    相关资源
    最近更新 更多