【问题标题】:I can't see the progress spinner in ProgressDialog on Lollipop我在 Lollipop 的 ProgressDialog 中看不到进度微调器
【发布时间】:2015-09-15 23:28:02
【问题描述】:

使用 ProgressDialog 制作应用程序,它在 JellyBean 上显示良好,但在使用 Lollipop 进行测试时,我只看到标题和消息,没有进度微调器。我正在使用

compile 'com.android.support:appcompat-v7:22.2.0'

支持库和 AppCompatActivity

代码是:

 ProgressDialog progressDialog = new ProgressDialog(AddBuddyActivity.this);
 progressDialog.setMessage("Loading...");
 progressDialog.setCancelable(false);
 progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
 progressDialog.show();

您可以看到我在同一主题上发布的另一个问题here

【问题讨论】:

  • 添加代码供你查看进度对话框
  • 您可以为清单中使用的此活动添加您的主题吗?
  • @Shishram,我所有主题的主题都是 Theme.AppCompat.Light.DarkActionBar
  • 所以我意识到我遇到的一个问题是我在开发人员选项中关闭了动画。我手机上的其他应用程序开始在 ProgressDialog 中不显示进度微调器,所以我修改并发现这是我的应用程序和他们的应用程序的问题。但是,有些应用程序(Discover、Fidelity 等)在动画关闭时仍会显示微调器。您认为这些应用使用自定义对话框吗?
  • @Brandon 是的,您的窗口动画比例关闭导致了这个问题。并以编程方式启用它,您可以在这里查看stackoverflow.com/questions/27011200/…。和其他应用程序(如发现等)可能正在使用自定义对话框。

标签: android dialog spinner progress


【解决方案1】:

注意:您可以看到此问题here 的伪重复项。链接中的那个更彻底,但两者都有相同的解决方案。

答案似乎是,如果用户在开发人员选项中关闭了过渡,您在 ProgressDialog(即 Progress Spinner)中的动画将不会显示。打开它们并重新启动应用程序,您将看到微调器!

一种允许在关闭这些设置的情况下播放动画的解决方案似乎是制作一个自定义对话框,诚然,它看起来可能比默认的 ProgressDialog 更好。

并且,作为对试图滥用 ProgressDialog 的人的公平警告,请注意开发人员 documentation 的这些话:

Android 包含另一个名为 ProgressDialog 的对话框类,它显示带有进度条的对话框。但是,如果您需要指示加载或不确定的进度,则应遵循 Progress & Activity 的设计指南并在布局中使用 ProgressBar

据此,我认为在网络上使用它们进行长时间调用是可以的,而加载信息或执行长时间的本地进程应该使用其他进度组件之一来指示。

【讨论】:

  • 确实如此,篡改开发者选项可能会隐藏ProgressBar。我打开了开发者选项,progressdialog 变得可见。
  • 显然,即使是自定义 ProgressLoader 也会在这些设置开启后停止工作。丑陋!
【解决方案2】:

我在 Lollipop 中使用它。请让我知道这对你有没有用。 我使用的支持库是android-support-v4.jar

import android.app.ProgressDialog;

ProgressDialog dialog = ProgressDialog.show(this, "Title", "Message ", true, true);//Put this where you need it

这对我来说很好用: 带有 4.4.2 的 Droid Razor M 带有 5.0.1 的三星 Note 4 带有 5.1.1 的三星 Galaxy 6 Edge

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多