java - 进度条适用于 Android API 23,但不适用于 21 或 22

标签 java android

这是 xml 部分:

<ProgressBar
  android:layout_width="50dp"
  android:layout_height="match_parent"
  android:padding="15dp"
  android:layout_marginEnd="5dp"
  android:layout_alignParentEnd="true"
  android:visibility="gone"
  android:indeterminateTint="@color/colorPrimary"
  android:id="@+id/progressBar"
  android:indeterminate="true" />

我用它来显示和隐藏进度条:

progressBar.setVisibility(View.GONE);
progressBar.setVisibility(View.VISIBLE);

这在较新的手机上正如我希望的那样工作,但在 API 21 和 22 上,进度条永远不会显示。

最佳答案

添加 android:indeterminateTintMode="src_in" 修复了它:

<ProgressBar
  android:layout_width="50dp"
  android:layout_height="match_parent"
  android:padding="15dp"
  android:layout_marginEnd="5dp"
  android:layout_alignParentEnd="true"
  android:visibility="gone"
  android:indeterminateTint="@color/colorPrimary"
  android:indeterminateTintMode="src_in"
  android:id="@+id/progressBar"
  android:indeterminate="true" />

关于java - 进度条适用于 Android API 23,但不适用于 21 或 22,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41310845/

相关文章:

java - 保存 EMF 模型

java - 在从 Kafka 代理获取数据之前,消费者如何检查架构注册表是否可访问?

安卓模拟器不显示任何东西

java - 如何在 Android 中发送点击事件

java - JDatePicker 的 NullPointerException

java - 如何将大型文本文件的数据排序为多维数组?

java - 强制关闭Java应用程序是否会导致数据库连接泄漏

android - 未签名 Android ADT 是什么意思 (Eclipse)

android - 嵌入式系统:我应该使用哪个操作系统?

Android: fragment 之间跳转的正确方式