2017-08-14 5 views
0

enter image description hereTabLayout n'affiche pas correctement les onglets sous forme de comprimés

<android.support.design.widget.TabLayout 
      android:id="@+id/tl_dealer" 
      android:layout_width="240dp" 
      android:layout_height="42dp" 
      android:layout_gravity="center_horizontal" 

      android:layout_marginTop="12dp" 
      android:background="@drawable/tab_dealer_type_background" 
      app:tabBackground="@drawable/background" 
      app:tabSelectedTextColor="@color/white" 
      app:tabIndicatorColor="@color/action_bar_background" 
      app:tabTextColor="@color/action_bar_background"> 

      <android.support.design.widget.TabItem 
       android:layout_width="80dp" 
       android:layout_height="wrap_content" 
       android:text="HPCL" 
       /> 

      <android.support.design.widget.TabItem 
       android:layout_width="80dp" 
       android:layout_height="wrap_content" 
       android:text="IOCL"/> 

      <android.support.design.widget.TabItem 
       android:layout_width="80dp" 
       android:layout_height="wrap_content" 
       android:text="BPCL"/> 

     </android.support.design.widget.TabLayout> 

Ceci est mon code tablayout dans le fichier xml.

Voici le backgroudn.xml dans le dossier drawable:

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@color/action_bar_background" android:state_selected="true"/> 
    <item android:drawable="@color/white" android:state_selected="false"/> 
</selector> 

Et le fichier tab_dealer_type_background final:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
    <stroke android:width="1dp" android:color="@color/action_bar_background" /> 
    <padding android:left="0dp" android:top="1dp" android:bottom="1dp" android:right="1dp"/> 
</shape> 

Maintenant, ce qui se passe quand j'utiliser ces fichiers pour le combiné, il affiche des onglets correctement . Mais quand j'utilise le même code dans une tablette, il comprend des espaces blancs à gauche et à droite du tablayout.

Quelqu'un peut-il me dire quel est le problème ici? Qu'est-ce qui me manque ici? J'ai essayé beaucoup de choses mais je ne suis pas capable de le rectifier. Si quelqu'un sait comment cela se passe s'il vous plaît dites-moi?

enter image description here

+0

Pouvez-vous joindre des captures d'écran? – Ufkoku

+0

Juste ajouté le tablayout mal formaté –

+0

supprimer ceci de la mise en page: android: layout_gravity = "center_horizontal" –

Répondre

0
<android.support.design.widget.TabLayout 
      android:id="@+id/tl_dealer" 
      android:layout_width="wrap_content" 
      android:layout_height="42dp" 

      android:layout_gravity="center_horizontal" 
      android:layout_marginTop="12dp" 
      android:background="@drawable/tab_dealer_type_background" 
      app:tabBackground="@drawable/background" 
      app:tabIndicatorColor="@color/action_bar_background" 
      app:tabMode="scrollable" 
      app:tabSelectedTextColor="@color/white" 
      app:tabTextColor="@color/action_bar_background"> 

      <android.support.design.widget.TabItem 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="HPCL" /> 

      <android.support.design.widget.TabItem 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="IOCL" /> 

      <android.support.design.widget.TabItem 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="BPCL" /> 

     </android.support.design.widget.TabLayout> 

Voilà comment je l'ai fait.