25

android:Android Support Libバージョン4からPagerTabStripにアイコン/ドローアブルを追加するにはどうすればよいですか?

これは、PagerTabStripを知っている人にとって非常に具体的な質問です。どこにも十分な例が見つかりませんでした。どういうわけか新しいので(PagerTabStrip)、十分な情報を見つけることができませんでした。

4

2 に答える 2

53

SpannableStringまたはSpannableStringBuilderを使用して、アイコン/ドローアブルを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;
}
于 2012-10-11T10:35:05.590 に答える
3

@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>

画像は最初のケースでは表示されず、2番目のケースで表示されます。それがお役に立てば幸いです。

于 2016-05-03T14:53:33.550 に答える