gpt4 book ai didi

ios - 在横向启动时 UIView 大小变糟

转载 作者:行者123 更新时间:2023-12-01 18:23:41 25 4
gpt4 key购买 nike

我有一个收容UIViewController在我的viewDidLoad方法我从 Storyboard 加载它的 subview Controller 。然后我将 subview Controller View 添加为 subview 并尝试设置这个新的 View 大小:

  childVC.view.frame=CGRectMake(0,0,768,1004);

发生的情况是,当您以横向模式启动应用程序时,左侧(物理设备的底部)会出现 20 像素的“间隙”。
如果我在代码中获取设备方向并使用,我可以避免这种情况
  CGRectMake(0,0,748,1024);

当检测到景观时,改为使用 frame 属性。但是,我认为必须有不同的解决方案。

在问题出现之前:我设置了框架而不是边界属性,因为一旦解决了这个问题,我需要将 View 定位在 0,0 以外的位置。据我所知,没有其他方法可以做到这一点,对吧?

最佳答案

根据父 View 的边界设置 subview 的框架。然后确保 subview 的自动调整大小掩码设置为“灵活宽度”和“灵活高度”。不要像你一样对尺寸进行硬编码。

childVC.view.frame = parentVC.view.bounds;
childVC.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

一旦这工作,您可以根据需要调整 subview 的框架。但它仍然应该基于父 View 的边界。

关于ios - 在横向启动时 UIView 大小变糟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15557548/

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