您的位置:首页 > 其它

使用handler了获取控件点击数(使用Message来通信)

2018-02-28 13:24 218 查看
package com.linyb.timer;

import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity{
ImageView imageView;
int count=0;
private Handler handler= new Handler() {
//主线程更新UI

@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.arg1==1){
setTitle(""+count);
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = (ImageView) findViewById(R.id.image);
//This message is already in use.
//final Message msg=handler.obtainMessage();
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//子线程进行耗时操作
new Thread(new Runnable() {
@Override
public void run() {
count++;
//这里才能正常计算
//避免获取重复的对象
Message msg=handler.obtainMessage();
msg.arg1=1;
handler.sendMessage(msg);
}
}).start();
}
});
}

//要加上不然返回键还在运行
@Override
protected void onDestroy() {
super.onDestroy();
System.exit(0);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐