La Suppression De L'Image Bouton De Rembourrage (Android)
J'ai des Boutons qui ressemblent à l'image du haut pour l'orientation paysage:
capture d'écran http://i46.tinypic.com/33zb9dj.jpg
Je veux qu'il ressemble à l'image du bas.
Voici mon .code xml de ces boutons.
<TableRow
android:id="@+id/tableRow7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:weightSum="1.0" >
<ImageButton
android:id="@+id/appHome"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:background="@null"
android:contentDescription="Home"
android:cropToPadding="true"
android:scaleType="fitEnd"
android:src="@drawable/home_bar" />
<ImageButton
android:id="@+id/menuHome"
android:layout_weight="0"
android:background="@null"
android:contentDescription="Menu"
android:cropToPadding="true"
android:scaleType="center"
android:src="@drawable/menu_bar" />
<ImageButton
android:id="@+id/back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:background="@null"
android:contentDescription="Back"
android:cropToPadding="true"
android:scaleType="fitStart"
android:src="@drawable/back_bar" />
</TableRow>
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas le faire avec les boutons par défaut, les boutons 9 patchs ont un rembourrage en eux (les deux, holo et le pré holo boutons).
Vous pouvez voir que ici.
Si vous voulez boutons sans rembourrage, alors vous devrez modifier le 9 patchs et de créer votre propre thème:
et votre imageButtonStyle:
J'ai fini par résoudre cela par le changement de mon TableLayout à un LinearLayout. Voici mon code, à moins que quelqu'un d'autre vient sur ce problème:
//suppression de l'
android:weightSum
utiliser une largeur dematch_parent
//donner
android:layout_weight="1"
pour tous imageButton//utilisation
android:scaleType="fitXY"
pour tousUtilisation négative de rembourrage sur les
ImageButton
dans votre xml pour réduire le rembourrage utilisé.Remarque ci-dessus est juste un exemple... vous aurez besoin de jouer avec les chiffres pour les ajuster à votre cas spécifique afin de rendre les choses correctes.
Une alternative plus facile de créer votre propre 9 patch image pour supprimer la marge est de définir l'arrière-plan la valeur null.
Par exemple, ajoutez la ligne suivante à res/styles.xml:
Vous devez maintenant trouver que tous les ImageButtons à zéro de la marge, indépendamment du fait que défini en XML ou créé par programmation.