TintDrawable.java 文件源码

java
阅读 38 收藏 0 点赞 0 评论 0

项目:android_ui 作者:
/**
 * Updates tint of the wrapped drawable depends on the specified <var>stateSet</var>.
 *
 * @param stateSet State set to properly resolve tint color.
 * @return {@code True} if tint has ben updated, {@code false} otherwise.
 */
private boolean updateTint(int[] stateSet) {
    if ((mPrivateFlags & PFLAG_HAS_COLOR_FILTER) == 0) {
        if (mTintList != null && mTintMode != null) {
            final int tintColor = mTintList.getColorForState(stateSet, mCurrentTint);
            if (tintColor != mCurrentTint || (mPrivateFlags & PFLAG_TINT_COLOR_CACHING_ENABLED) == 0) {
                super.setColorFilter(new PorterDuffColorFilter(tintColor, mTintMode));
                this.mCurrentTint = tintColor;
            }
        } else {
            super.clearColorFilter();
        }
    }
    return false;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号