gpt4 book ai didi

android - 当我在 View.VISIBLE 之后调用 View.GONE 时 ProgressBar 不显示(但仅在旧手机上)

转载 作者:行者123 更新时间:2023-11-30 00:14:51 26 4
gpt4 key购买 nike

在我的 MainActivity 的 xml 文件中,我定义了一个圆形 ProgressBar,我想在我的应用程序执行某些加载时显示它。

private void refresh() {
new AsyncTask<Void, Void, Void>() {
@Override
protected void onPreExecute() {
super.onPreExecute();

//show progress bar and blur background
progressBar.setVisibility(View.VISIBLE);
mainActivityScreen.setAlpha(0.5f);
}

@Override
protected Void doInBackground(Void... params) {
/*do something */
return null;
}

@Override
protected void onPostExecute(Void aVoid) {
super.onPreExecute();

//hide progress bar and unblur background
progressBar.setVisibility(View.GONE);
mainActivityScreen.setAlpha(1.0f);
}
}.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
}

当我在我的 Nexus 6P 上运行这段代码时,它完全按照预期运行。我单击刷新按钮,出现一个进度条(最初是不可见的),应用程序执行一些网络操作,完成后进度条再次消失。现在,当我在旧手机上运行相同的代码时,progressBar 不会显示。起初我以为手机可能无法加载 progressBar 但那不是问题,因为当我省略该行时

progressBar.setVisibility(View.GONE);

它出现了(但显然不会再次消失)。它显示的时间不够长也不是问题,因为网络操作大约需要 2 秒才能完成。

有人能告诉我为什么这只适用于我的新手机而不适用于旧手机吗?我快要疯了。

在此先感谢任何人的帮助。

编辑:xml:

<ProgressBar
android:id="@+id/progressBar"
style="@android:style/Widget.DeviceDefault.ProgressBar"
android:indeterminateTint="@color/black"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:indeterminate="true"
android:visibility="gone"/>

最佳答案

我看到你的错误;

 protected void onPostExecute(Void aVoid) {
super.onPreExecute();
//hide progress bar and unblur background
progressBar.setVisibility(View.GONE);
mainActivityScreen.setAlpha(1.0f);
}

在 onPostExecute 完成后,您将再次调用 super.onPreExecute()。

删除该行:

 protected void onPostExecute(Void aVoid) {
//hide progress bar and unblur background
progressBar.setVisibility(View.GONE);
mainActivityScreen.setAlpha(1.0f);
}

关于android - 当我在 View.VISIBLE 之后调用 View.GONE 时 ProgressBar 不显示(但仅在旧手机上),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47459966/

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