2017-01-09 3 views
0

У меня есть этот TabLayout:Добавить TextAppearance в TabLayout

<android.support.design.widget.TabLayout 
    android:id="@+id/tab_layout_chef_my_menu" 
    android:background="@android:color/white" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="top" /> 

И я пытаюсь добавить стиль к заголовкам, но когда я добавить эту строку app:tabTextAppearance="@style/AppTabLayout" эта ошибка появляется:

java.lang.NullPointerException 
    at android.support.design.widget.TabLayout.<init>(TabLayout.java:344) 
    at android.support.design.widget.TabLayout.<init>(TabLayout.java:285) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
    at 
+1

Где вы разместили 'android.support.design: tabTextAppearance'? –

+0

Я добавил android: tabTextAppearance = "@ style/tabStyle" в мой TabLayout, и я получил ошибку компиляции. –

+0

И какая ошибка возвращается? –

ответ

0

У меня была такая же проблема, пока я не смог ее исправить, используя руководство на этом веб-сайте.

https://guides.codepath.com/android/google-play-style-tabs-using-tablayout#styling-the-tablayout

Согласно статье, Вы должны сначала создать свои стили таким образом:

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

<style name="MyCustomTabTextAppearance" parent="TextAppearance.Design.Tab"> 
    <item name="android:textStyle">bold</item> 
</style> 

Затем перейдите в TabLayout и добавить стиль = "@ стиль/MyCustomTabLayout"

<android.support.design.widget.TabLayout 
    android:id="@+id/tab_layout_chef_my_menu" 
    android:background="@android:color/white" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="top" 
    style="@style/MyCustomTabLayout" 
/> 
Смежные вопросы