Estou tentando, de certa forma, clonar o design de uma atividade a partir de um conjunto de slides no design da interface do usuário do Android . No entanto, estou tendo um problema com uma tarefa muito simples.
Eu criei o layout como mostrado na imagem, e o cabeçalho é um TextView
em a RelativeLayout
. Agora, desejo alterar a cor de fundo do arquivo RelativeLayout
, mas não consigo descobrir como.
Sei que posso definir a android:background
propriedade na RelativeLayout
tag no arquivo XML, mas o que devo definir? Eu quero definir uma nova cor que eu possa usar em vários lugares. É um drawable
ou um string
?
Além disso, eu esperaria que houvesse uma maneira muito simples de fazer isso dentro do designer de interface do usuário do Eclipse Android, que eu devo estar perdendo?
Atualmente, estou um pouco frustrado, pois essa deve ser uma atividade realizada com apenas alguns cliques. Portanto, qualquer ajuda é muito apreciada. :)
fonte
Respostas:
Você pode usar recursos de cores simples , especificados geralmente dentro
res/values/colors.xml
.e use isso via
android:background="@color/red"
. Essa cor também pode ser usada em qualquer outro lugar, por exemplo, como uma cor de texto. Referencie-o em XML da mesma maneira ou obtenha-o no código viagetResources().getColor(R.color.red)
.Você também pode usar qualquer recurso desenhável como plano de fundo, use
android:background="@drawable/mydrawable"
para isso (isso significa desenhos de 9 patches, bitmaps normais, desenhos de formas, etc.).fonte
ANDROID_SDK\samples
pasta (para várias versões do Android). Todo o aplicativo de amostra da API também vem pré-instalado em todas as instâncias do emulador.As respostas acima são legais. Você também pode fazer isso de forma programática, se quiser
Primeiro, seu layout deve ter um ID. Adicione-o escrevendo a seguinte
+id
linha em res / layout / *. XmlEm seguida, no seu código Java, faça as seguintes alterações.
além disso, se você tiver a cor definida em colors.xml, também poderá fazer programaticamente:
fonte
Você pode usar
android:background="#DC143C"
ou qualquer outro valor RGB para sua cor. Não tenho nenhum problema em usá-lo dessa maneira, como indicado aquifonte
o
exemplo não funcionou para mim, mas o
trabalhou para mim no elemento de layout relativo como um atributo.
fonte
Se você deseja alterar uma cor rapidamente (e você não tem números hexadecimais memorizados), o Android possui algumas cores predefinidas que você pode acessar assim:
Você pode escolher entre 15 cores, o que é bom para testar rapidamente as coisas e não é necessário configurar arquivos adicionais.
A configuração de um arquivo values / colors.xml e o uso do Hex direto, como explicado acima, ainda funcionarão.
fonte
4 maneiras possíveis, use uma que você precisa.
1. Kotlin
2. Ligação de Dados
OU declaração mais útil
3. XML
4. Java
fonte
O Android studio 2.1.2 (ou possivelmente anterior) permitirá escolher entre uma roda de cores:
Eu consegui isso adicionando o seguinte ao meu layout:
Depois, cliquei na cor FFFFFF e na lâmpada que apareceu.
fonte
Kotlin
ou
-
fonte
As respostas acima de tudo são estáticas. Eu pensei que daria uma resposta dinâmica. Os dois arquivos que precisam estar sincronizados são os relativos
foo.xml
ao layout eactivity_bar.java
correspondem à classe Java correspondente a esteR.layout.foo
.Em
foo.xml
definir um ID para todo o layout:E em
activity_bar.java
definir a cor noonCreate()
:Eu espero que isso ajude.
fonte