gpt4 book ai didi

ios - 模拟器中的 UIView 边界/绘图不正确

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:46:48 25 4
gpt4 key购买 nike

我创建了一个单 View 测试应用程序,并向主 Storyboard 中的 UIViewController 添加了 UIButtonUIView。我已将按钮和 View 的大小调整为相同的大小。

enter image description here

在我的 VC 的 -viewDidAppear:animated 方法中,我转储了按钮和 View 的框架和边界:

- (void)viewDidAppear:(BOOL)animated
{
NSLog(@"button bounds: %@", NSStringFromCGRect(self.theButton.bounds));
NSLog(@"button frame: %@", NSStringFromCGRect(self.theButton.frame));

NSLog(@"view bounds: %@", NSStringFromCGRect(self.theView.bounds));
NSLog(@"view frame: %@", NSStringFromCGRect(self.theView.frame));
}

这是在模拟器中运行时的输出:

button bounds: {{0, 0},     {100, 100}}
button frame: {{110, 72}, {100, 100}}
view bounds: {{0, 0}, {100, 12}}
view frame: {{110, 179}, {100, 12}}

在设备上运行时:

button bounds: {{0, 0},     {100, 100}}
button frame: {{110, 72}, {100, 100}}
view bounds: {{0, 0}, {100, 100}}
view frame: {{110, 179}, {100, 100}}

不明白为什么在模拟器中运行时 View 报高度为12。 View 在模拟器中绘制不正确,但在设备上运行时按预期绘制。请注意,UIViewController 的最顶层 UIVIew 未选中“Autoresize Subviews”(尽管这两种方式都没有影响)。

(Xcode 4.5.2. iOS 6.0)

谢谢,CS

enter image description here

最佳答案

单击显示布局中的“应用 Retina 4 外形规范”按钮。您为 Retina 4 设置了此设置,因此在模拟器中运行时屏幕将调整为 3.5。您可以通过运行 iPhone5 模拟器(Retina 4 英寸)来验证这一点。在将形状因子切换为 3.5 后,您会注意到高度变为 12。

enter image description here

关于ios - 模拟器中的 UIView 边界/绘图不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13724173/

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