我正在使用PagerTitleStrip来滑动片段,我需要为所选项目或突出显示的标题制作一个点。 我的XML代码:
<android.support.v4.view.PagerTitleStrip
android:id="@+id/pager_title_strip"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="#fff"
android:paddingBottom="6dp"
android:paddingTop="6dp"
android:textColor="@color/blueColorSwipeText" />
我还需要更改突出显示的标题颜色。 请帮帮我。 谢谢 建议表示赞赏。
答案 0 :(得分:1)
使用textColor
属性;
在res / values / styles.xml中创建一个新样式:
<style name="Pager">
<item name="android:textColor">#4DB849</item>
<item name="android:indicatorColor">#E95044</item>
</style>
您将获得绿色标题和红色指示。
您可能希望查看ViewPagerIndicator
要更改指示器,您必须更改onDraw(Canvas canvas)方法。
以下是源代码PagerTabStrip.java。
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
final int height = getHeight();
final int bottom = height;
final int left = mCurrText.getLeft() - mTabPadding;
final int right = mCurrText.getRight() + mTabPadding;
final int top = bottom - mIndicatorHeight;
mTabPaint.setColor(mTabAlpha << 24 | (mIndicatorColor & 0xFFFFFF));
canvas.drawRect(left, top, right, bottom, mTabPaint);
if (mDrawFullUnderline) {
mTabPaint.setColor(0xFF << 24 | (mIndicatorColor & 0xFFFFFF));
canvas.drawRect(getPaddingLeft(), height - mFullUnderlineHeight,
getWidth() - getPaddingRight(), height, mTabPaint);
}
}
您必须更改此行:
canvas.drawRect(left, top, right, bottom, mTabPaint);
测试你是否在替换时得到一个点:
canvas.drawCircle(left, top, 15, mTabPaint);
要绘制自定义视图,请查看Android文档。