我无法在Lollipop上看到ProgressDialog中的进度微调器

Bra*_*don 8 android dialog progress spinner

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

compile 'com.android.support:appcompat-v7:22.2.0'
Run Code Online (Sandbox Code Playgroud)

支持库和AppCompatActivity

代码是:

 ProgressDialog progressDialog = new ProgressDialog(AddBuddyActivity.this);
 progressDialog.setMessage("Loading...");
 progressDialog.setCancelable(false);
 progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
 progressDialog.show();
Run Code Online (Sandbox Code Playgroud)

您可以在此处查看我在同一主题上发布的另一个问题.

Bra*_*don 18

注意:您可以在此处查看此问题的伪复制品.链接中的那个更彻底,但两者都有相同的解决方案.

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

允许关闭这些设置的动画的解决方案似乎是制作一个自定义对话框,这无疑可能看起来比默认的ProgressDialog更好.

并且,作为对试图滥用ProgressDialog的人的公平警告,请注意开发人员文档中的这些内容:

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

从这一点来看,我认为使用它们通过网络进行长时间调用是可以的,而加载信息或执行一个长的本地进程应该使用其他一个进度组件来指示.

  • 它的真实,篡改开发者选项可能会隐藏ProgressBar.我转向了开发人员选项,并且progressdialog变得可见. (2认同)