【发布时间】:2012-04-25 12:50:56
【问题描述】:
我有一个活动或屏幕,主要包含 3 个视图(ex.textview1、textview2、textview3)和一个进度条。
如果我单击 textview1、textview2、textview3 中的任何一个,则在进度条运行或加载时, 相应的下一个活动或屏幕正在打开。
但我想,如果我点击任何这些视图,运行相关屏幕的进度条应该禁用(不可点击)或者不应该移动到下一个屏幕。
请举例回复
【问题讨论】:
我有一个活动或屏幕,主要包含 3 个视图(ex.textview1、textview2、textview3)和一个进度条。
如果我单击 textview1、textview2、textview3 中的任何一个,则在进度条运行或加载时, 相应的下一个活动或屏幕正在打开。
但我想,如果我点击任何这些视图,运行相关屏幕的进度条应该禁用(不可点击)或者不应该移动到下一个屏幕。
请举例回复
【问题讨论】:
只需创建一个布尔值,当您有正在进行的事情时,然后在您的 onClickListener 中检查它。
boolean isRunning;
@Override
public void onClick(View v) {
if(isRunning)
return;
//handle code normally
}
【讨论】:
您可以使用AsyncTask 类来执行此操作
仅供参考,AsyncTask 在 Android 中称为 Painless Threading。
onCreate() {
...
MyTask task = new MyTask();
task.execute();
}
class MyTask extends AsyncTask
{
onPreExecute() {
// disable your views here
}
doInBackground() {
// do your loading here in background
}
onPostExecute() {
// enable your views to start activities
}
}
【讨论】: