Gostaria de alterar a cor azul abaixo do texto de edição, não sei que propriedade é.
Tentei usar uma cor de fundo diferente para ele, mas não funcionou.
Anexei uma imagem abaixo:
android
login
android-edittext
Entusiasta do Android
fonte
fonte
Respostas:
Na verdade, é bastante fácil definir a cor de sublinhado de um EditText programaticamente (apenas uma linha de código).
Para definir a cor:
Para remover a cor:
Nota: quando o EditText tem foco , a cor que você definir não terá efeito, em vez disso, ela tem uma cor de foco.
Referência API:
Drawable # setColorFilter
Drawable # clearColorFilter
fonte
Control.Background.SetColorFilter(Android.Graphics.Color.White, PorterDuff.Mode.SrcIn);
Renderer
você substitui? Estou tentando descobrir como fazer isso funcionar para uma barra de pesquisa.SearchBarRenderer
não seja do tipoEditText
. Não consigo fazer funcionar.Use
android:backgroundTint=""
em seuEditText
layout xml.Para api <21, você pode usar
AppCompatEditText
da biblioteca de suporte, entãoapp:backgroundTint=""
fonte
android:background="@null"
para dispositivos com api <21.Você deve usar uma imagem de fundo diferente, não uma cor, para cada estado do
EditText
(foco, habilitado, ativado).http://android-holo-colors.com/
No site acima, você pode obter imagens de vários componentes do tema Holo. Basta selecionar "EditText" e a cor desejada. Você pode ver uma prévia na parte inferior da página.
Baixe o arquivo .zip e copie e cole os recursos do seu projeto (imagens e XML).
se o seu XML for denominado: apptheme_edit_text_holo_light.xml (ou algo semelhante):
Vá para seu XML "styles.xml" e adicione o
EditText
estilo personalizado :Basta fazer isso em seu
EditText
:E é isso, espero que te ajude.
fonte
Isso funciona bem para versões antigas e novas do Android (funciona bem até mesmo na API 10!).
Defina este estilo em
styles.xml
:E agora em seu XML, defina isso como tema e estilo ( estilo para definir
textColor
e tema para definir todas as outras coisas):Editar
Esta solução causa uma pequena falha na IU em versões mais recentes do Android (Lollipop ou Marshmallow em diante) que as alças de seleção são sublinhadas.
Este assunto é discutido neste tópico . (Eu não tentei essa solução pessoalmente)
fonte
você pode alterar a cor de Sublinhado de EditText especificando-a em styles.xml . No seu app theme.xml, adicione o seguinte.
Conforme apontado por ana na seção de comentários
definir isso no estilo do tema funciona bem para alterar a cor de um sublinhado de texto de edição.
fonte
android:textColorSecondary
é usado para determinar a cor da seta para trás e doDrawerLayout
ícone de hambúrguer na ActionBar.<item name="colorControlNormal">@color/edittext_underline_color</item>
vez de textColorSecondary por causa do problema de coloração da barra de navegação.Portanto, você precisa criar um novo arquivo .xml em sua pasta drawable.
Nesse arquivo, cole este código:
E em seu EditText, defina
Você pode brincar com seu xml drawable, definir cantos, preenchimentos, etc.
fonte
No estilo do seu aplicativo, defina a propriedade colorAccent . Aqui você encontra um exemplo
fonte
Você pode alterar a cor de EditText programaticamente apenas usando esta linha de código facilmente:
edittext.setBackgroundTintList(ColorStateList.valueOf(yourcolor));
fonte
Use o código abaixo para alterar a cor de fundo da borda do texto de edição.
Crie um novo arquivo XML em drawable.
abc.xml
e adicione-o como fundo de seu texto de edição
fonte
Para alterar a cor da linha de fundo, você pode usar isso no tema do seu aplicativo:
Para alterar a cor do rótulo flutuante, escreva o seguinte tema:
e use este tema em seu layout:
fonte
Você pode fazer isso com AppCompatEditText e seletor de cores:
selector_edittext_underline.xml:
fonte
Se você não precisa oferecer suporte a dispositivos com API <21, use backgroundHint em xml, por exemplo:
Para melhor suporte e fallbacks, use a solução @Akariuz. backgroundHint é a solução mais indolor, mas não compatível com versões anteriores, com base em seus requisitos, faça uma chamada.
fonte
mude a
colorAccent
cor que você precisa para definir a corcolorAccent
e execute para obter o resultadofonte
Basta alterar android: backgroundTint no código xml para a sua cor
fonte