2012-11-15 6 views
5

Ich muss die Schriftfarbe für PagerTabStrip in ViewPager für meine Android-App ändern. Dies ist das XML-Layout für dasselbe. Kann ich das irgendwie machen?Benutzerdefinierte Schriftfarbe für PagerTabStrip in ViewPager für meine Android-App

<android.support.v4.view.ViewPager 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_below="@id/head" 
    android:id="@+id/myfivepanelpager"> 

     <android.support.v4.view.PagerTabStrip 
     android:id="@+id/pgstrip" 
     android:layout_width="fill_parent" 
     android:background="@color/strip" 
     android:layout_height="@dimen/pagerstripht" 
     android:layout_gravity="top" 
     /> 

    </android.support.v4.view.ViewPager> 

Antwort

10

Wenn Sie nicht gefunden haben noch heraus, Code unter

PagerTabStrip pagerTabStrip = (PagerTabStrip) findViewById(R.id.pager_title_strip); 
pagerTabStrip.setDrawFullUnderline(true); 
pagerTabStrip.setTabIndicatorColor(Color.RED); 
10

im Code:

<android.support.v4.view.PagerTabStrip 
     android:id="@+id/pgstrip" 
     android:layout_width="fill_parent" 
     android:background="@color/strip" 
     android:layout_height="@dimen/pagerstripht" 
     android:layout_gravity="top" 
     /> 

Ich denke, das Hinzufügen android: textcolor = "# 000" wird sich ändern die Textfarbe.

+3

Nicht sicher, warum diese Antwort abgelehnt wurde ?! Durch das Setzen des Attributs 'textColor' wird tatsächlich die Farbe des Textes in einem 'PagerTabStrip' geändert. –

+5

Es hat tatsächlich funktioniert !! Aber ich weiß nicht, warum Androidenhinweis nicht diese bestimmte Option zeigte –

10

Die untergeordneten Ansichten des PagerTabStrip abrufen und prüfen, ob es sich um eine TextView-Instanz handelt. Ist dies der Fall, stellen Sie die folgende Textfarbe ein:

PagerTabStrip mPagerTabStrip = (PagerTabStrip) findViewById(R.id.pgstrip); 
for (int i = 0; i < mPagerTabStrip.getChildCount(); ++i) { 
    View nextChild = mPagerTabStrip.getChildAt(i); 
    if (nextChild instanceof TextView) { 
     TextView textViewToConvert = (TextView) nextChild; 
     textViewToConvert.setTextColor(getResources().getColor(R.color.primary_text_color_dark_gray)); 
    } 
} 
+2

Ich würde dies aufwerten, wenn es eine kleine Erklärung für den Code gäbe. – Amicable

+3

Ich habe meine Antwort aktualisiert. –

Verwandte Themen