objective-c - ios页面跳转有点卡顿
PHP中文网
PHP中文网 2017-04-18 09:15:45
[iOS讨论组]

其中一个ViewController执行以下语句

UIViewController *vc = [[UIViewController alloc] init];
[self.navigationController pushViewController:vc animated:false];

将要被push的ViewController的viewDidLoad方法中,我init了一个textview和一个button,并且addSubview了,然后我在viewWillAppear方法中设置了他们的一点属性,用Masonry做了布局。
然后在第一次push的时候会产生卡顿,请问有什么方法避免?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(12)
怪我咯

首先要清除卡顿是发生在哪里 用Time Profiler看看
或者你把代码贴出来

天蓬老师

在跳转过去的控制器中设置背景色了么

迷茫

需要加载的东西太多 注意自己的代码逻辑 卡顿的原因太多你需要找出问题进行针对性的优化

PHPz

可以将跳转的控制器view设置一个白色背景

大家讲道理

跳过去的viewcontroller 的view backgroundcolor 不能为clearcolor

阿神

怎么初始化了一个类的实例呢?你要跳转的那个类的名字不会就叫做UIViewController.h吧?

大家讲道理

有可能是下一个页面的背景颜色问题,我们以前遇到过,是不是有潜在设置透明度?

高洛峰

写了这么点东西,会卡?有可能是backgroundColor的问题,最好填代码看看

PHP中文网

最好push出的控制器 设置背景颜色 不然会造成渲染导致卡顿

大家讲道理

在view did appear里做吧。viewwillappear和转场动画都在同一次runloop迭代中,autolayout本身很耗性能的。把布局和动画都放在同一次 runloop迭代中会加重该次迭代的负担。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号