表示没有看懂你的代码,你的 activity 实现了 Runnable 接口,且不说这种做法的好坏,但是我没有看到你在哪里对他进行了执行
解决方案 »
- 求助!!!!!如何知道屏幕的方向是左横、右横、倒立、正立?
- 布局问题
- android启动后出现:invalid option 'chmod'
- Cache partition already in use. Changes will not persist!
- 有用过foxit sdk的同学吗?
- 地铁查询如何实现
- androidpn
- 要么没有adb,要么让更新SDK到22.2。不知道android到底
- "select * from sensor where time(sensor.time) like'1000-00-00 00:00:04'
- android 如何使用.so库里文件
- html5 audio 打包成安卓audio无法播放
- Android Camera类旋转的问题
我是新手 刚学习得 找的网上的源码拼凑的 Runnable不是直接调用run()么? 我想直接开个线程运行RUN()里的代码应该怎么做呢? run()里面的代码就是在SD卡上的根目录里的Record.txt文件 转换成字符串。我想将这个字符串在主线程读出来。
private View.OnClickListener endListen=new View.OnClickListener() {
@Override
public void onClick(View v) {
new Thread(){
@Override
public void run() {
//读取文件操作。
//读取成功后想Handler中发送消息,进行UI操作
handler.sendEmptyMessage(SUCCESS);
}
}.start();
} }; private Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
//生成安全措施界面
if(msg.what == SUCCESS){
//处理UI
}
}
};思路就是这样,自己调一下吧=。=
1.楼主是想做一个耗时操作,那势必要放在一个线程里来做,所以要 new Runnable(),然后楼主可以在run方法里写读取SD卡的业务实现。
2.那我SD卡的String读出来了,怎么才能通知并显示在UI主画面上呢?这是就要new Handler(),来通知并传值给UI
3.以上两点实现了,那怎么样才能让线程启动呢,要有一个事件触发一下,new Thread(new Runnable()).start() 启动线程,就OK了。楼主刚学,思路要清楚...java:
private View.OnClickListener endListen=new View.OnClickListener() {
@Override
public void onClick(View v) {
new Thread(){
@Override
public void run() {
//读取文件操作。
//读取成功后想Handler中发送消息,进行UI操作
handler.sendEmptyMessage(SUCCESS);
}
}.start();
} };
private Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
//生成安全措施界面
if(msg.what == SUCCESS){
//处理UI
}
}
};