PagerTabStrip修改选中/未选中tab字体颜色

来源:互联网 发布:电脑防护软件2016 编辑:程序博客网 时间:2024/05/17 02:22

PagerTabStrip tabs = (PagerTabStrip) rootView.findViewById(R.id.tabs);
tabs.setTextColor(R.color.theme_accent);/修改选中tab项字体的颜色/
tabs.setNonPrimaryAlpha(0.2f);/通过设置透明度来修改未选中tab项的字体颜色/
未选中tab字体的颜色是选中tab字体颜色的基础上的透明度为多少,不能直接修改未选中tab的字体颜色(修改未选中tab字体颜色没有现实意义,未选中时置灰,选中时为选中tab字体颜色较实用)
PagerTabStrip 集成了 PagerTitleStrip,setNonPrimaryAlpha(),setTextColor()都为PagerTitleStrip中的方法

见sdk源码 \sdk\extras\android\support\v4\src\java\android\support\v4\view\PagerTitleStrip.java

/**     * Set the color value used as the base color for all displayed page titles.     * Alpha will be ignored for non-primary page titles. See {@link #setNonPrimaryAlpha(float)}.     *     * @param color Color hex code in 0xAARRGGBB format     */    public void setNonPrimaryAlpha(float alpha) {        mNonPrimaryAlpha = (int) (alpha * 255) & 0xFF;        final int transparentColor = (mNonPrimaryAlpha << 24) | (mTextColor & 0xFFFFFF);        mPrevText.setTextColor(transparentColor);        mNextText.setTextColor(transparentColor);    }    /**     * Set the color value used as the base color for all displayed page titles.     * Alpha will be ignored for non-primary page titles. See {@link #setNonPrimaryAlpha(float)}.     *     * @param color Color hex code in 0xAARRGGBB format     */    public void setTextColor(int color) {        mTextColor = color;        mCurrText.setTextColor(color);        final int transparentColor = (mNonPrimaryAlpha << 24) | (mTextColor & 0xFFFFFF);        mPrevText.setTextColor(transparentColor);        mNextText.setTextColor(transparentColor);    }

如若转载,请注明文章出处,谢谢
http://blog.csdn.net/w690333243/article/details/50953064

0 0
原创粉丝点击