浏览代码

Use multiply tint mode on API 10 or less

plusCubed 10 年之前
父节点
当前提交
d5ee47088f
共有 1 个文件被更改,包括 6 次插入2 次删除
  1. 6 2
      library/src/main/java/com/afollestad/materialdialogs/internal/MDTintHelper.java

+ 6 - 2
library/src/main/java/com/afollestad/materialdialogs/internal/MDTintHelper.java

@@ -46,10 +46,14 @@ public class MDTintHelper {
             progressBar.setSecondaryProgressTintList(stateList);
             progressBar.setIndeterminateTintList(stateList);
         } else {
+            PorterDuff.Mode mode = PorterDuff.Mode.SRC_IN;
+            if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.GINGERBREAD_MR1) {
+                mode = PorterDuff.Mode.MULTIPLY;
+            }
             if (progressBar.getIndeterminateDrawable() != null)
-                progressBar.getIndeterminateDrawable().setColorFilter(color, PorterDuff.Mode.SRC_IN);
+                progressBar.getIndeterminateDrawable().setColorFilter(color, mode);
             if (progressBar.getProgressDrawable() != null)
-                progressBar.getProgressDrawable().setColorFilter(color, PorterDuff.Mode.SRC_IN);
+                progressBar.getProgressDrawable().setColorFilter(color, mode);
         }
     }