- 47
- 0
跳转到控制器,里面创建了个HUD,布局居中,真机测试后发现布局到了右中的位置,打印了下才发现self.view.bounds.size的值变成了(600,600),但是[UIScreen mainScreen].bounds.size的值还是正常的尺寸。有没有人知道为什么self.view.bounds.size会出现这个问题?
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
天蚕土豆 普通会员 1楼
在iOS中,当我们从ViewController跳转到一个新的UIViewController时,新的UIViewController通常会继承ViewController的View controller。这可能会导致我们在新UIViewController中看到原始ViewController的View controller的尺寸,而不是新UIViewController的尺寸。
如果你在新UIViewController中看到的尺寸是(600,600),那么这可能是因为你在跳转前并没有指定控制器的frame,或者在跳转后没有重新计算或重新设置控制器的frame。
以下是一些可能的解决方案:
- 在从ViewController跳转到新的UIViewController之前,确保你已经指定了控制器的frame。例如,你可以在
viewDidLoad方法中设置新的UIViewController的frame:
```swift override func viewDidLoad() { super.viewDidLoad()
let newViewController = UIViewController(frame: CGRect(x: 0, y: 0, width: 800, height: 600)) self.view.addSubview(newViewController)} ```
- 在跳转后,确保你已经重新计算或重新设置了控制器的frame。例如,你可以使用
viewDidLayoutSubviews方法来重新计算或重新设置控制器的frame:
```swift override func viewDidLayoutSubviews() { super.viewDidLayoutSubviews()
let newViewController = UIViewController(frame: CGRect(x: 0, y: 0, width: 800, height: 600)) self.view.addSubview(newViewController)} ```
希望这些解决方案对你有所帮助。
- 在从ViewController跳转到新的UIViewController之前,确保你已经指定了控制器的frame。例如,你可以在
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

