android 线程更新view及数据传送
16lz
2021-01-26
很多新手在启动新线程更新view时会出现
“Only the original thread that created a view hierarchy can touch its views”
以下是正确做法
“Only the original thread that created a view hierarchy can touch its views”
以下是正确做法
第一步:/* 启动Thread */ new Thread(mTasks).start();第二部:private Runnable mTasks = new Runnable() { public void run() { while (run) { try { Thread.sleep(IntervalSec * 1000); /* 传送Message给Handler */ mHandler.sendMessage(mHandler.obtainMessage()); //传送数据 /* Bundle data = new Bundle(); data.putString("aa","ttt"); Message msg = new Message(); msg.setData(data); mHandler.sendMessage(msg); */ } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } };第三步:Handler mHandler = new Handler() { public void handleMessage(Message msg) { super.handleMessage(msg); getYamWeatherPic();//此处更新view内容 //Log.d("--------", msg.getData().getString("aa")); } };
更多相关文章
- 【Android(安卓)初学】9、Activity生命周期
- Android——刷新媒体库
- Android(安卓)启动Activity而不显示界面的问题解决
- android实现两个页面跳转
- Android定时刷新UI界面----Handler
- Android启动流程以及分类
- Android好的文章,持续更新
- Android:Activity(三):启动其他Activity并返回结果
- 进程内服务Service(SimpleRandomServiceDemo)