gpt4 book ai didi

android - 在 Android 中显示 ProgressBar 几秒钟

转载 作者:行者123 更新时间:2023-11-29 21:15:54 26 4
gpt4 key购买 nike

我必须在我的 Android 应用程序中等待几秒钟,并且我想在这段时间内显示一个进度条,我该怎么做?

例如:

@Override
protected void onCreate(Bundle savedInstanceState) {

timeForShow(5 //second);

}
.
.
.

private void timeForShow(long mytime){

myprogress.setVisibility(View.VISIBLE);
Waiting for mytime...
myprogress.setVisibility(View.GONE);

}

这是我的代码,但它不起作用:

Long timerforprogressbar ;

@Override
protected void onCreate(Bundle savedInstanceState) {

timerforprogressbar = (long) 5000 ;
new MyProgressBar().execute((Void)null);

}
.

.

.


class MyProgressBar extends AsyncTask<Void, Void, Void>{

@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
progressbar.setVisibility(View.VISIBLE);
try {
Thread.sleep(timerforprogressbar);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}

@Override
protected void onPostExecute(Void result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
progressbar.setVisibility(View.GONE);
}

}

我的进度条:

    <ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
android:indeterminateDrawable="@drawable/progress" >
</ProgressBar>

progressbar 是我的进度条,请帮助我,tnx。

最佳答案

对于您的特定用例,使用处理程序会更简单:

new Handler().postDelayed(new Runnable() {

@Override
public void run() {
progressbar.setVisibility(View.GONE);
}

}, timerforprogressbar);

你没有提到你的进度条是如何构建的,但如果你只是想显示一个不确定的进度,那么我认为以编程方式构建它是最简单的事情。

private ProgressDialog working_dialog;

private void showWorkingDialog() {
working_dialog = ProgressDialog.show(context, "","Working please wait...", true);
}

private void removeWorkingDialog() {
if (working_dialog != null) {
working_dialog.dismiss();
working_dialog = null;
}
}

这将使代码看起来像:

showWorkingDialog();

new Handler().postDelayed(new Runnable() {

@Override
public void run() {
removeWorkingDialog();
}

}, timerforprogressbar);

关于android - 在 Android 中显示 ProgressBar 几秒钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21467269/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com