单击时刷新按钮的标签

时间:2011-06-08 08:18:11

标签: android button onclick

我需要在单击时更改Button的文本,因此我使用了myButton.setText("New Label"),但只有在onClick(View v)函数结束时才会刷新视图。

实际上我需要的是在单击按钮时更改标签而不等待功能结束:单击按钮时我所做的事情需要很长时间。

一种解决方案可能是强制ViewonClick()结束前刷新,但我不知道是否可行或如何做。

另一个解决办法可能是将我在onClick()之外的内容移动到一个新函数中,该函数将在onClick()结束后直接调用,但在这里,我不知道如何我能做到。

2 个答案:

答案 0 :(得分:4)

您可能需要设置OnTouchListener并实施onTouch方法。

在此方法中,您将获得一个MotionEvent并可以收听MotionEvent.ACTION_DOWN

因此,您可以在用户触摸按钮后立即更改标签。

答案 1 :(得分:0)

你不应该在UI线程上做任何耗时的事情。您应该启动单独的工作线程,然后更新按钮上的文本并从onClick函数返回。

如何启动应该在进展和/或完成时更新UI的工作线程,请参阅AsyncTask