---恢复内容开始---

错误1

安卓的机制决定了只有UI线程(也就是主线程)才能更新UI界面

否则会导致UI界面混乱的问题

这就说明了在new Thread中直接showImage是会报“出现非主线程更新界面”的错误

错误2

尝试在一次点击事件中多次更新UI界面    或者   妄想在死循环中一直更新UI界面,会导致UI堵塞,如下图所示

错误3

这里正解是通过Android的Handler机制,在Runnable 中持续跟新UI,但是想用死循环在Runnable中的run 方法里持续显示,会出现错误2的问题

正解

1.创建全局变量 public Handler   handler =  new Handler();

2.在需要更新UI 界面的地方创建一个线程

new Thread(){

@Override
public void run(){//*********}

}

3.在run地方用handler的post方法,注意post()里应该传入一个Runnable对象,我们在创建时可以重新创建

4.在Runnable中重写run方法,在run方法里添加showImage,点击运行,完成了在线程跟新UI界面的操作

5.如果想持续更新UI线程,在showImage()后面添加  handler.postDelayed()方法,  方法中第一个参数传入的是Runnable对象,第二个为延时时长

这里我的Runnable对象传入的this,就完成了持续更新界面的操作

具体代码如下

button_start.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
isRunning = true;
    JNImethod(outMat1.getNativeObjAddr(),outMat2.getNativeObjAddr());
new Thread(){
@Override
public void run() {
handler.post(new Runnable() {
@Override
public void run()
{ showMatImage(outMat1, outMat2); //执行时间在4ms左右
handler.postDelayed(this, 100);
}
});
}
}.start();
}}); 我是在一个"开始"点击事件里添加的持续跟新UI界面的操作
我是通过慕课网上的视频学习做成的 传送门:https://www.imooc.com/learn/267
能力有限,有些地方表述不当,希望大家不吝赐教

---恢复内容结束---

最新文章

  1. 找出数组中从未出现的最小正整数java实现
  2. 北大poj- 1067
  3. jquery的toFixed方法的正确使用
  4. web组件
  5. sudo: ./sd_fusing.sh:找不到命令
  6. SVN查看提交日志的命令
  7. 关于driver_register做了些什么
  8. C#中使用ref 和 out 的一点认识
  9. sql server 2008 把远程的数据库的数据转移到本地数据数据库里
  10. C#方法有关内容的总结--C#基础
  11. nginx的location配置root、alias用法和区别
  12. Alpha 事后诸葛亮(团队)
  13. git小技巧
  14. 2018年Java生态行业报告
  15. SpringCloud和Springboot
  16. github个人心得
  17. 小程序篇- data 数据绑定
  18. 牛客练习赛41 B-666RPG
  19. 20155339平措卓玛 Exp2 后门原理与实践
  20. 《转载》Linux服务之搭建FTP服务器&&分布式文件服务器的比较

热门文章

  1. 更新Xcode10与iOS12 遇到的bug:library not found for -lstdc++.6.0.9
  2. 【Tools】-NO.93.Tools.5.pyCharm-【pyCharm 安装与破解配置】-
  3. IDEA eclipse转maven
  4. vue-amap | 基于 Vue 2.x 与高德的地图组件
  5. centos----------防火墙firewalld和iptables
  6. asp.net 导出excel--NPOI
  7. python assert断言函数
  8. eclipse无法断点调试JDK源码的问题
  9. Centos 编译 安装 criu
  10. SQL语句汇总(二)——数据修改、数据查询