TintTypedArray a = TintTypedArray.obtainStyledAttributes(context, attrs, R.styleable.MaterialProgressBar, defStyleAttr, defStyleRes); mProgressStyle = a.getInt(R.styleable.MaterialProgressBar_mpb_progressStyle, PROGRESS_STYLE_CIRCULAR); boolean setBothDrawables = a.getBoolean( R.styleable.MaterialProgressBar_mpb_showProgressBackground, mProgressStyle == PROGRESS_STYLE_HORIZONTAL); int determinateCircularProgressStyle = a.getInt( R.styleable.MaterialProgressBar_mpb_determinateCircularProgressStyle, DETERMINATE_CIRCULAR_PROGRESS_STYLE_NORMAL); mProgressTintInfo.mProgressTintMode = DrawableCompat.parseTintMode(a.getInt( R.styleable.MaterialProgressBar_mpb_progressTintMode, -1), null); mProgressTintInfo.mHasProgressTintMode = true; mProgressTintInfo.mSecondaryProgressTintMode = DrawableCompat.parseTintMode(a.getInt( R.styleable.MaterialProgressBar_mpb_secondaryProgressTintMode, -1), null); mProgressTintInfo.mHasSecondaryProgressTintMode = true; mProgressTintInfo.mProgressBackgroundTintMode = DrawableCompat.parseTintMode(a.getInt( R.styleable.MaterialProgressBar_mpb_progressBackgroundTintMode, -1), null); mProgressTintInfo.mHasProgressBackgroundTintMode = true; mProgressTintInfo.mIndeterminateTintMode = DrawableCompat.parseTintMode(a.getInt( R.styleable.MaterialProgressBar_mpb_indeterminateTintMode, -1), null); mProgressTintInfo.mHasIndeterminateTintMode = true;