Finalmente, depois de muito ameaçar, minha primeira App Android!
Pessoal,
qual a melhor forma de implementar um button multilinha com diferentes estilos/tamanhos de texto?
É um botão(na verdade três) com um título, um texto explicativo embaixo com uma imagem á direita.Tentei usar font size/color no arquivo de strings.xml(onde estão os textos) mas não funciona 100%.
Você quer colocar tudo isso num botão? Wow.
Faz o seguinte: cria um layout qualquer (um RelativeLayout, por exemplo) e seta um clickListener nele. Algo assim:
<RelativeLayout
id="@+id/botao">
<TextView
id="@+id/titulo"/>
<TextView
id="@+id/textoExplicativo"/>
<ImageView
id="@+id/imagem"/>
</RelativeLayout>
Alinhando eles com as propriedades do RelativeLayout: alignParentTop, alignParentBottom, toRightOf…
FelipeTorres,
eu tenho 15 anos de Java.Mas apenas alguns dias de Android(depois da ameaça de começar vários projetos).
Na minha App, quando o usuário entra, ele terá 3 linhas( que na verdade serão 3 botões) com as opções de cadastrar,listar e deletar uma dada tarefa.Muito parecido com 3 linhas de um RecycleView, mas essas 3 linhas serão fixas quando a App inicia.Isso foi pedido de um possível cliente.
Eu não sei se é a melhor abordagem, mas se tiver alternativas eu aceito.E era exatamente como vc postou que eu estava pensando, mas não sei se é a melhor abordagem.
um []´ção!
Então você não quer um único “botão multilinha”. Quer apenas 3 botões separados, alinhados na vertical.
Na verdade, terá que ter um provavel alinhamento na horizontal(entre os 2 textview e a foto a direita) e um alinhamento vertical entre o textview de título e o de conteúdo.Eu chamei de multilinha devido ao alinhamento entre o título e o conteúdo, mas honestamente, não sei qual o termo correto.
Sem problemas
Minha sugestão seria fazer aquele layout mesmo.
Outra abordagem (mais interessante) seria criar seu próprio componente Button
. O problema dessa forma é que teria que sobrescrever alguns métodos chatos.
Então, pela simplicidade, iria pela minha primeira sugestão, mesmo.
Obs.: uma terceira forma seria usar a propriedade android:drawableLeft="@drawable/sua_imagem"
dentro do Button
. Essa forma é mais limitada, mas vale a tentativa.