iOS--关于使用NSTimer实现滚动条? 400 报错
_timer = [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(timerAction) userInfo:nil repeats:YES];
[[NSRunLoop currentRunLoop] addTimer:_timer forMode:NSRunLoopCommonModes];
如上:我使用了NSTimer实现滚动条自动滚动的效果,并将滚动条加入一个viewController页面中,在这个VC中还有其他的操作,如网络请求,跳转什么的,我发现每次我进行网络请求时,滚动条就是卡顿住,直到网络请求完成时,才恢复正常。。。
求大神帮忙解决,给个解决建议。。。(个人分析与网络请求有关系)
因为你没有开线程吧,一个线程里只能执行一个任务######回复 @T_Four : 当然是网络了 UI的操作要在主线程中进行的######回复 @T_Four : 给NSTimer开个子线程试试######给网络开线程?还是NSTimer?######
开异步线程就好!
开子线程的话,给网络任务开子线程。主线程又叫UI线程,主线程并不是线程安全的。所以最好主线程只用来处理UI的操作。
######你用afn网络请求,啥也不用你管了非常方便
######耗时任务不要在主线程中进行最好吧.开个子线程就解决了应该.######问题应该出在网络请求上,检查一下是不是使用的同步请求,同步请求会是UI卡顿
######runloopMode 类型改一下试试######[[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。