Android ImageButton - Não consigo obter a imagem no centro
-
20-08-2019 - |
Pergunta
Quero criar um botão de imagem Android no arquivo XML com uma imagem em segundo plano e um ícone menor em cima disso, bem no centro. Por alguma razão, não é óbvio como fazê -lo, e a documentação não ajuda.
<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"
/>
No entanto, não importa o que eu tente (colocando "embrulhe _ conteúdo" ao invés de absoluto Números no layout _ altura e layout _ largura, o ícone permanece no canto superior esquerdo do botão. Se, no entanto, não tenho imagem de fundo (ou seja, um botão branco padrão do sistema), o ícone entra no centro. O botão também entra no canto superior esquerdo quando uso uma cor em vez de uma imagem para o fundo.
Por que isso acontece e como eu realmente conseguiria o comportamento que quero- é uma imagem de fundo com o ícone no centro?
Solução
Eu sou um verdadeiro idiota. É assim que ele aparece no visor que o plug-in ecliplse fornece lado a lado com o editor XML. Quando eu realmente construo o projeto e o executei em um dispositivo, ele exibia tudo corretamente.
Outras dicas
Ironicamente, eu tinha exatamente o problema oposto com um ImageView - não consegui obtê -lo, não importa o que tentei. Nesse caso, eu estava usando layout_width="fill_parent"
.
Veja minha pergunta aqui: Layout Android - Problema de Alinhamento com ImageView
Tente usar o botão e defina o fundo é muito útil e fácil: D
Faça o texto vazio e você pode usá -lo como o botão de imagem ^_ ^