The application may be doing too much work on its main thread.问题可能的解决办法
2014-03-18 17:58
721 查看
Choreographer
Skipped 37 frames! The application may be doing too much work on its main thread.
原因:----- 在主线程中操作的东西太多了,可能是刷新页面太过频繁
解决办法:(1) 添加标识,减少不必要的刷新页面;
(2) 可以用调用View的post()或者postDelayed()方法来的view显示完全后再去执行一些树新工作;
(3) 过多的调用了view.isShown()来判断该view的显示隐藏状态,isShown()其实有些鸡肋的(可以看源码←_←),自己完全可以用一个简单的boolean变量来标识view的显示和隐藏状态,而且不费性能;isShown()还有一点变态的地方就是,调用该方法可能会使view自己指向其父控件←_←;
好了,我已无力吐槽了,如果你也遇到了类似问题,希望对你能有所帮助~~
Skipped 37 frames! The application may be doing too much work on its main thread.
原因:----- 在主线程中操作的东西太多了,可能是刷新页面太过频繁
解决办法:(1) 添加标识,减少不必要的刷新页面;
(2) 可以用调用View的post()或者postDelayed()方法来的view显示完全后再去执行一些树新工作;
(3) 过多的调用了view.isShown()来判断该view的显示隐藏状态,isShown()其实有些鸡肋的(可以看源码←_←),自己完全可以用一个简单的boolean变量来标识view的显示和隐藏状态,而且不费性能;isShown()还有一点变态的地方就是,调用该方法可能会使view自己指向其父控件←_←;
好了,我已无力吐槽了,如果你也遇到了类似问题,希望对你能有所帮助~~
/** 是否时按下状态 **/ private boolean isDown; /** 录音界面是否显示 **/ private boolean isTimeShown; /** 取消录音界面是否显示 **/ private boolean isCancelShown; // 显示正在录音页面 if(!isTimeShown){ audio_time.setVisibility(View.VISIBLE); isTimeShown = true; } if(isCancelShown){ audio_cancel.setVisibility(View.GONE); isCancelShown = false; } if(!isDown){ isDown = true; audio_match.postDelayed(new Runnable() { @Override public void run() { audio_match.setBackgroundColor(getResources().getColor(R.color.record_btn_bg_c)); audio_match.setTextColor(getResources().getColor(R.color.white)); } }, 15); }
相关文章推荐
- The application may be doing too much work on its main thread.
- The application may be doing too much work on its main thread.
- The application may be doing too much work on its main thread
- 蓝牙连接异常,报错The application may be doing too much work on its main thread.
- android:The application may be doing too much work on its main thread.
- The application may be doing too much work on its main thread.
- 日志输出The application may be doing too much work on its main thread.
- The application may be doing too much work on its main thread.
- The application may be doing too much work on its main thread.
- ListView The application may be doing too much work on its main thread
- 自定义view界面提示The application may be doing too much work on its main thread.
- Skipped 60 frames! The application may be doing too much work on its main thread
- Choreographer: Skipped 129 frames! The application may be doing too much work on its main thread.
- 13、主线程任务太多导致异常退出(The application may be doing too much work on its main thread)
- Andriod部分手机频繁闪退,vivo y55a等,Skipped 62 frames! The application may be doing too much work on its main thread
- I/Choreographer: Skipped 40 frames! The application may be doing too much work on its main thread.
- 出现 I/Choreographer: Skipped 160 frames! The application may be doing too much work on its main thre
- MBProgressHUD needs to be accessed on the main thread.报错的解决办法
- 解决办法:Synchronous XMLHttpRequest on the main thread is deprecated because of its
- -[UIKeyboardTaskQueue waitUntilAllTasksAreFinished] may only be called from the main thread.【创建键盘监听事件,然后操作键盘(弹出、收回),结果在运行程序时出现如下错误(如有知道解决办法的朋友请留言探讨!)】