【发布时间】:2011-03-31 11:52:39
【问题描述】:
我正在尝试在我的应用程序中实现进度条。 此进度条在按钮单击时可见,然后一个线程也随之启动。当线程完成时,我试图使进度条不可见。但它在执行时遇到了异常:
progressbar.setVisibility(View.GONE);
例外:
android.view.ViewRoot$CalledFromWrongThreadException:只有创建视图层次结构的原始线程才能接触其视图。
我的代码是:
Thread thredUpdate = new Thread()
{
public void run()
{
ClearDatabase();
progressbar.setVisibility(View.GONE);
}
};
requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
setProgressBarVisibility(true);
ProgressBar progressbar = (ProgressBar)findViewById(R.id.progress);
progressbar .setVisibility(View.GONE);
btnUpdateDB.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View argBtnUpdateDB)
{
setProgressBarVisibility(true);
progressbar.setVisibility(View.VISIBLE);
try
{
if((progressbar.isEnabled()))
thredUpdate.start();
}
catch(Exception exSoap)
{
exSoap.printStackTrace();
}
} });
如何在不调用 setVisibility(View.GONE) 的情况下取消此进度条?
谢谢...
【问题讨论】:
标签: android progress-bar