É possível definir a cor de apenas extensão de texto em um TextView?
Eu gostaria de fazer algo semelhante ao aplicativo do Twitter, no qual uma parte do texto é azul. Veja a imagem abaixo:
(fonte: twimg.com )
android
text
formatting
textview
hpique
fonte
fonte
Aqui está uma pequena função de ajuda. Ótimo para quando você tem vários idiomas!
fonte
Eu sempre acho exemplos visuais úteis ao tentar entender um novo conceito.
Cor de fundo
Cor do primeiro plano
Combinação
Um estudo mais aprofundado
fonte
Se você deseja mais controle, pode verificar a
TextPaint
turma. Aqui está como usá-lo:fonte
Defina
TextView
o texto do seu spannable e defina aForegroundColorSpan
para o seu texto.fonte
Outra maneira que pode ser usada em algumas situações é definir a cor do link nas propriedades da exibição que está usando o Spannable.
Se o seu Spannable for usado em um TextView, por exemplo, você poderá definir a cor do link no XML assim:
Você também pode configurá-lo no código com:
fonte
Existe uma fábrica para criar o Spannable e evitar o elenco, assim:
fonte
Jogo de cor no texto pela passagem de Cordas e cor :
Defina o texto no TextView / Button / EditText etc chamando o código abaixo:
TextView:
Obter sequência colorida:
Definir texto no TextView:
Feito
fonte
Resultado:
fonte
Apenas para adicionar à resposta aceita, como todas as respostas parecem falar
android.graphics.Color
apenas: e se a cor que eu quero estiver definidares/values/colors.xml
?Por exemplo, considere as cores do Material Design definidas em
colors.xml
:(
android_material_design_colours.xml
é seu melhor amigo)Em seguida, use
ContextCompat.getColor(getContext(), R.color.md_blue_500)
onde você usariaColor.BLUE
, para que:torna-se:
Onde eu achei isso:
fonte
Aqui está uma função de extensão Kotlin que eu tenho para isso
Use-o depois de definir seu texto para o TextView da seguinte maneira
fonte
cole esse código em sua MainActivity
fonte
Abaixo funciona perfeitamente para mim
fonte
Algumas respostas aqui não estão atualizadas. Porque, na maioria dos casos , você adiciona uma ação de clic personalizada ao seu link .
Além disso, conforme fornecido pela ajuda da documentação, a cor do link da sequência estendida terá uma cor padrão. "A cor padrão do link é a cor de destaque do tema ou android: textColorLink se este atributo estiver definido no tema".
Aqui está o caminho para fazê-lo com segurança.
Então para usá-lo.
Espero que isso ajude fortemente!
fonte
Nos documentos do desenvolvedor, para alterar a cor e o tamanho de um spannable:
1- criar uma classe:
2 Crie seu spannable usando essa classe:
fonte