2016-08-28 10 views
0

私のスタイルXMLファイルに変更を加えて、私のTabLayoutにカスタムスタイルを定義しました。なぜTabLayoutのスタイルにエラーがありますか?

マイコード:

<style name="MyCustomTabLayout" parent="Widget.Design.TabLayout"> 
<item name="tabTextAppearance">@style/MyCustomTabTextAppearance</item> 
</style> 

<style name="MyCustomTabTextAppearance"> 
     <item name="android:textSize">14sp</item> 
     <item name="textAllCaps">true</item> 
</style> 

また、私は、私は私の研究をしたとき、それは私がそうparentが来たところからそこに
<style name="MyCustomTabTextAppearance" parent="TextAppearance.Design.Tab">を使用する必要があることを示したことをお願いしたいと思います。私はドキュメントを通過しましたが、このTextAppearance.Design.Tabはどこに見つからなかったのですか?だから、なぜこのアプリがこの親なしで動作しないのですか、どこから親の正確な目的を知ることができますか?

public static void changeTabsAttributes(TabLayout tabLayout, int textSize) { 

    ViewGroup vg = (ViewGroup) tabLayout.getChildAt(0); 
    int tabsCount = vg.getChildCount(); 
    for (int j = 0; j < tabsCount; j++) { 
     ViewGroup vgTab = (ViewGroup) vg.getChildAt(j); 
     int tabChildsCount = vgTab.getChildCount(); 
     for (int i = 0; i < tabChildsCount; i++) { 
      View tabViewChild = vgTab.getChildAt(i); 
      if (tabViewChild instanceof TextView) { 
       //set the background somewhere here? 
       ((TextView) tabViewChild).setTextSize(textSize); 
      } 
     } 
    } 
} 

は、あなたが得るものを教えて、その後、これを試してみてください:

+0

タブのテキストを変更しようとしていますか? – Eenvincible

+0

チェック:https://guides.codepath.com/android/google-play-style-tabs-using-tablayout – piotrek1543

+0

@Engvincibleしかし、質問はより広範です。 https://developer.android.com/reference/android/support/design/widget/TabLayout.html#attr_android.support.design:tabTextAppearanceのドキュメントには、親として表示されるものも何も表示されません。だから、その親のテキストはどこから来たのですか? – arqam

答えて

0

は、次のサンプルコードを試してみてください!また、tablayoutにxmlを使って背景色を変更することはできませんか?

+0

私はちょうど1つのテキストサイズとスタイルを使用して背景を持っている。私は各タブごとに異なるプロパティを必要としません。 – arqam

+0

次に、tablayoutでカスタムテキストサイズと背景色が必要なときにこのメソッドを呼び出すことができます。これを試したくない場合は、もう少しXMLを試してみてください – Eenvincible

関連する問題