android: 如何从 Android Support Lib 版本 4 向 PagerTabStrip 添加图标/drawables?
对于了解 PagerTabStrip 的人来说,这是一个非常具体的问题,我在任何地方都找不到足够的示例,它在某种程度上是新的(PagerTabStrip),所以我找不到足够的信息。
android: 如何从 Android Support Lib 版本 4 向 PagerTabStrip 添加图标/drawables?
对于了解 PagerTabStrip 的人来说,这是一个非常具体的问题,我在任何地方都找不到足够的示例,它在某种程度上是新的(PagerTabStrip),所以我找不到足够的信息。
您可以使用 SpannableString 或 SpannableStringBuilder 轻松地将图标/drawable 添加到 PageTabStrip。
例如,在文本之前显示一个图标:
Drawable myDrawable; //Drawable you want to display
@Override
public CharSequence getPageTitle(int position) {
SpannableStringBuilder sb = new SpannableStringBuilder(" Page #"+ position); // space added before text for convenience
myDrawable.setBounds(0, 0, myDrawable.getIntrinsicWidth(), myDrawable.getIntrinsicHeight());
ImageSpan span = new ImageSpan(myDrawable, ImageSpan.ALIGN_BASELINE);
sb.setSpan(span, 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return sb;
}
@MatthewHousser 如果 SteveR 的解决方案不起作用,可能是因为您在 XML 的 PagerTabStrip 中设置了固定大小。这就是我所拥有的:
<android.support.v4.view.PagerTabStrip
android:id="@+id/pager_tab_strip"
android:layout_width="match_parent"
android:layout_height="30dp">
</android.support.v4.view.PagerTabStrip>
这就是我现在拥有的:
<android.support.v4.view.PagerTabStrip
android:id="@+id/pager_tab_strip"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.v4.view.PagerTabStrip>
图像在第一种情况下没有显示,而在第二种情况下显示。希望它会有所帮助。