如何点击多个按钮但只能在上次点击工作?

时间:2014-10-16 03:10:56

标签: android button

我正在开发一款App。它有多个button,每个button会将TCP data发送到Server

例如:Button-AButton-BButton-C有三个按钮。 Button-A会将“A”发送到服务器等

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);
            }
        });

如果我快速点击从Button-AButton-C的按钮。服务器将接收三次数据。这是低效的......

如何实施点击多个按钮但仅适用于上次点击?

如果我快速点击Button-AButton-C的按钮,我希望应用仅发送我点击的最后一个按钮的数据。

我尝试使用thread每3秒向服务器发送一次数据。它将每3秒发送一次data的最后一个值。

还有其他更好的方法吗?

1 个答案:

答案 0 :(得分:0)

好吧,正如我在评论中看到的那样,有人告诉你能够通过AsyncTask来解决它。这也是我的建议...... 您必须设置Handlercancel()任务的方法。

看看这两个链接: AsyncTask by Vogella和 如何在SO

上取消任务here

希望它有所帮助。