Android 如何单击多个按钮,但仅对上次单击有效?
我正在开发一个应用程序。它有多个按钮,每个按钮都会将TCP数据发送到服务器 例如:按钮A、按钮B和按钮C有三个按钮。按钮A将把A发送到服务器,等等Android 如何单击多个按钮,但仅对上次单击有效?,android,button,Android,Button,我正在开发一个应用程序。它有多个按钮,每个按钮都会将TCP数据发送到服务器 例如:按钮A、按钮B和按钮C有三个按钮。按钮A将把A发送到服务器,等等 private static String data; btn_A.setOnClickListener(new OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub
private static String data;
btn_A.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
data = "A";
send(data);
}
});
btn_B.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
data = "B";
send(data);
}
});
btn_C.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
data = "C";
send(data);
}
});
如果我快速点击按钮A到按钮C。服务器将接收三次数据。这是低效的
如何实现点击多个按钮,但只为最后一次点击工作
我希望应用程序只发送我点击的最后一个按钮的数据,如果我快速点击按钮A到按钮C
我尝试使用线程每3秒钟向服务器发送一次数据。它将每3秒发送最后一个数据值
还有其他更好的方法吗?好吧,正如我在评论中看到的,有人告诉你可以通过异步任务解决这个问题。这也是我的建议。。。 您必须设置一个处理程序和一个方法来取消任务 请看以下两个链接: 和 如何取消SO上的任务
希望能有帮助 您可以使用AsyncTask。@Gunaseelan如何使用AsyncTask解决它?一旦您向服务器发送请求,请等待响应,在收到响应后,允许用户与UI线程交互。我希望你能理解