前言

在使用 NumberProgressBar组件的时候 运行时异常Only the original thread that created a view hierarchy can touch its views

异常为:说只有创建这个view的线程才能操作这个 view,普通会认为是将view创建在非UI线程中才会出现这个错误。

Github地址:NumberProgressBar一个带数字的进度条

解决方法

既然问题已经找到是 view创建在非UI线程中才会出现这个错误

可以直接使用android 的更新ui线程
是在progressBar更新进度条的时候 runOnUiThread

 @Override
public void onDownLoadProgress(int progress, long total) {
                    runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            progressBar.setMax(100);
                            progressBar.setProgress(progress);
                        }
                    });
                }

如此解决此运行时Bug!

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐