gpt4 book ai didi

iphone - ios:改变方向后UIView的宽高不准确?

转载 作者:行者123 更新时间:2023-12-01 17:56:45 25 4
gpt4 key购买 nike

我正在尝试确保我的自定义 UIView即使在方向更改后,它也始终位于屏幕中央。

所以我试图用我的 UIView 做一些数学运算。的superview,这是我的程序的主视图(所以它占据了整个屏幕)。

我注意到在方向改变后打印出 super View 框架的宽度和高度时,它的宽度和高度在第一次旋转后没有改变,那么这不是我之后所期望的。

出乎意料的是,当设备处于纵向模式时,宽度 = 480 和高度 = 320。当设备处于横向模式时,宽度 = 320 和高度 = 480。

我从以下 channel 获得这些数字:

CGRect sFrame = [self superview].frame;
NSLog(@"width = %f, height = %f", sFrame.size.width, sFrame.size.height);

这是在我的自定义 UIView 中。

super View 的框架不会自动更新吗?如果没有,我应该在哪里获得准确的宽度和高度?有一个更好的方法吗?

非常感谢你!

最佳答案

使用 autoresizingMask

view.center = view.superview.center;
view.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;

那么您不必再编写任何代码

关于iphone - ios:改变方向后UIView的宽高不准确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16110076/

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