Android ImageButton - ne peut pas obtenir l'image au centre

je veux créer un ImageButton Android dans le fichier xml avec une image de fond, et une icône plus petite en plus de cela, en plein centre. Pour une raison quelconque, il n'est pas évident de savoir comment le faire, et la documentation n'est d'aucune aide.

<ImageButton
android:id="@+id/sound_button"
android:layout_x="430px"
android:layout_y="219px"
android:layout_width="48px"
android:layout_height="48px"
android:scaleType="center"
android:src="@android:drawable/volumeicon"
android:background="@drawable/clearbuttonup"
/>

cependant, peu importe ce que j'essaie (en mettant" wrap _ content "au lieu de absolute nombres sur layout _ hauteur et layout _ largeur, l'icône reste dans le coin supérieur gauche de la bouton. Si, cependant, je n'ai pas d'image de fond (c.-à-d. un bouton blanc par défaut du système), l'icône va dans le centre. Le bouton va également dans le coin supérieur gauche lorsque j'utilise une couleur au lieu d'une image pour l'arrière-plan.

pourquoi cela arrive-t-il, et comment obtiendrais-je réellement le comportement que je veux-- c'est-à-dire une image de fond avec l'icône au centre?

23
demandé sur Nikhil 2009-03-19 03:32:09

3 réponses

je suis un vrai crétin. C'est ainsi qu'il apparaît dans l'affichage que le plugin Ecliplse fournit côte à côte avec L'éditeur XML. Quand je construis le projet et que je l'exécute sur un appareil, il affiche tout correctement.

16
répondu executor21 2009-03-19 04:50:55

Ironie du sort, J'ai eu exactement le problème inverse avec ImageView - Je ne pouvais pas l'aligner à gauche quoi que j'aie essayé. Dans ce cas, j'utilisais layout_width="fill_parent" .

voir ma question ici: mise en page Android - problème d'alignement avec ImageView

1
répondu Alnitak 2017-05-23 12:17:01

essayez d'utiliser le bouton et de régler l'arrière-plan c'est très utile et facile :d

faites le texte vide et vous pouvez l'utiliser comme le bouton d'image ^ _ ^

0
répondu Oubaida AlQuraan 2013-05-31 20:10:44