5

Voglio rimuovere il padding (spazi) tra le schede di ActionBar.Personalizza Padding of ActionBar Tabs Support

Sto utilizzando la libreria di supporto Android V7 (Appcompat) per utilizzare Fragments e ActionBar in Android 2.2 API 8 come minSDK e 4.4 API 19 come maxSDK.

Ho provato quanto segue ma non cambia nulla.

mio styles.xml

<resources xmlns:android="http://schemas.android.com/apk/res/android"> 
    <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light"> 
    </style> 

    <style name="AppTheme" parent="AppBaseTheme"> 
     <item name="@style/Widget.AppCompat.ActionBar.TabView">@style/TabBarStyle</item> 
    </style> 

    <style name="TabBarStyle" parent="@style/Widget.AppCompat.ActionBar.TabView"> 
     <item name="android:paddingLeft">2dp</item> 
     <item name="android:paddingRight">2dp</item> 
    </style> 
</resources> 

La mia attività da AndroidManifest.xml

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" 
    android:uiOptions="splitActionBarWhenNarrow" > 

Qualcuno mi può mostrare favore, come estendere e utilizzare il tema personalizzato in modo corretto.

risposta

4

configurare il AndroidManifest.xml di utilizzare un tema personalizzato:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    .... 
    <application 
     ... 
     android:theme="@style/AppTheme" 
     ... 
    > 
    ... 
    </application> 
    .... 
</manifest> 

definire il vostro tema personalizzato in res/values/styles.xml

<resources xmlns:android="http://schemas.android.com/apk/res/android"> 

    <!-- Use a custom Application theme extending an existing AppCompat theme. --> 
    <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light"> 
    </style> 

    <!-- customize parts of your theme. --> 
    <style name="AppTheme" parent="AppBaseTheme"> 
     <!-- indicate that the actionBar uses a custom style and configure the link --> 
     <item name="actionBarTabStyle">@style/TabBarStyle</item> 
    </style> 

    <!-- configure your real custom style for the tab bar--> 
    <style name="TabBarStyle" parent="@style/Widget.AppCompat.ActionBar.TabView"> 
     <item name="android:paddingLeft">5dp</item> 
     <item name="android:paddingRight">5dp</item> 
     <item name="android:minWidth">10dp</item> 
     <item name="android:maxWidth">15dp</item> 
    </style> 

</resources> 

Il seguente deve essere posto in res/values/styles-v11.xml e res/values/styles-v14.xml

<style name="AppTheme" parent="AppBaseTheme"> 
    <item name="actionBarTabStyle">@style/TabBarStyle</item> 
</style> 

<style name="TabBarStyle" parent="@style/Widget.AppCompat.ActionBar.TabView"> 
    <item name="android:paddingLeft">5dp</item> 
    <item name="android:paddingRight">5dp</item> 
    <item name="android:minWidth">10dp</item> 
    <item name="android:maxWidth">15dp</item> 
</style>