Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Um recurso drawable é um conceito geral para um gráfico que pode ser mostrado na tela e
extraído com APIs como getDrawable(int) ou ativado
em um outro recurso XML com atributos, por exemplo, android:drawable e android:icon.
Há vários tipos de drawables:
Um drawable que gerencia uma matriz de outros drawables. Eles são renderizados na ordem da matriz, então o
elemento com o índice maior é renderizado no topo. Cria um LayerDrawable.
Um arquivo XML que referencia diferentes gráficos bitmap
para diversos estados, por exemplo, para usar uma imagem diferente quando um botão é pressionado.
Cria um StateListDrawable.
Um arquivo XML que define um drawable que gerencia vários drawables alternativos a que
foram atribuídos valores numéricos máximos. Cria um LevelListDrawable.
É um arquivo XML que define um drawable que envolve outro a uma distância especificada.
É útil quando uma visualização precisa de um drawable de segundo plano menor do que os limites atuais
da visualização.
Observação: um recurso de cor também pode ser
usado como um drawable em XML. Por exemplo, ao criar um drawable de lista de estados,
é possível referenciar um recurso de cor para o atributo android:drawable (android:drawable="@color/green").
Bitmap
Imagem de bitmap. O Android oferece suporte a arquivos bitmap nestes formatos:
PNG (recomendado), WEBP (recomendado, exige o nível 17 da API ou mais recente), JPG (aceitável), GIF (não recomendado).
É possível referenciar um arquivo bitmap diretamente, usando o nome de arquivo como o ID de recurso ou criando um
ID de recurso de alias no XML.
Observação: é possível otimizar arquivos bitmap automaticamente com compressão
de imagem sem perda pela ferramenta aapt durante o processo de build. Por
exemplo, um PNG de cores verdadeiras que não exige mais de 256 cores pode ser convertido em um PNG de
8 bits com uma paleta de cores. Isso resulta em uma imagem com a mesma qualidade que requer menos
memória.
Portanto, os binários de imagem colocados nesse diretório podem mudar durante o build. Se
você planeja ler uma imagem como um bitstream para convertê-la em um bitmap, coloque suas imagens na
pasta res/raw/, onde não serão otimizadas.
Arquivo bitmap
Os arquivos bitmap são arquivos PNG, WEBP, JPG ou GIF. O Android cria um recurso
Drawable para qualquer um desses arquivos quando você os salva no diretório res/drawable/.
Localização do arquivo:
res/drawable/filename.png (.png, .webp, .jpg ou .gif)
O nome de arquivo é o ID do recurso.
O bitmap XML é um recurso definido no XML que aponta para um arquivo desse tipo. O efeito é um alias para um
arquivo de bitmap bruto. O XML pode especificar outras propriedades para o bitmap, por exemplo, pontilhamento e agrupamento.
Observação: você pode usar um elemento como filho de
um elemento . Por
exemplo, ao criar uma lista de estados ou uma lista de camadas,
é possível excluir o atributo android:drawable
de um elemento e aninhar um dentro dele
que define o item drawable.
Localização do arquivo:
res/drawable/filename.xml
O nome de arquivo é o ID do recurso.
Obrigatório. Define a origem do mapa de bits e suas propriedades.
Atributos:
xmlns:android
String. Define o namespace XML, que precisa ser
"http://schemas.android.com/apk/res/android". Só é necessário se
é o elemento raiz. Não é necessário quando o
está aninhado dentro de um .
android:src
Recurso drawable. Obrigatório. Referência a um recurso
drawable.
android:antialias
Booleano. Ativa ou desativa a suavização.
android:dither
Booleano. Ativa ou desativa o pontilhamento do bitmap quando ele não
tem a mesma configuração de pixels que a tela, por exemplo, um bitmap ARGB 8888 em uma tela
RGB 565.
android:filter
Booleano. Ativa ou desativa a filtragem do bitmap. A filtragem é usada quando o
bitmap é encolhido ou estendido para suavizar a aparência.
android:gravity
Palavra-chave. Define a gravidade bitmap. A gravidade indica onde
posicionar o drawable no contêiner se o bitmap for menor que ele.
Precisa ser um ou mais dos seguintes valores constantes, separados por |:
Valor
Descrição
top
Coloca o objeto no topo do contêiner sem mudar o tamanho.
bottom
Coloca o objeto na parte de baixo do contêiner sem mudar o tamanho.
left
Coloca o objeto na borda esquerda do recipiente sem mudar o tamanho.
right
Coloca o objeto na borda direita do recipiente sem alterar o tamanho.
center_vertical
Coloca o objeto no centro vertical do contêiner sem mudar o tamanho.
fill_vertical
Aumenta o tamanho vertical do objeto, se necessário, para que ele preencha completamente o contêiner.
center_horizontal
Coloca o objeto no centro horizontal do contêiner sem mudar o tamanho.
fill_horizontal
Aumenta o tamanho horizontal do objeto, se necessário, para que ele preencha completamente o contêiner.
center
Coloca o objeto no centro do contêiner, nos eixos vertical e horizontal, sem
mudar o tamanho.
fill
Aumenta o tamanho horizontal e vertical do objeto, se necessário, para que ele preencha completamente
o contêiner. Esse é o padrão.
clip_vertical
Outra opção que pode ser definida para que as bordas de cima e/ou de baixo do filho sejam recortadas
nos limites do contêiner. O recorte se baseia na gravidade vertical: uma gravidade no topo recorta a
borda de baixo, uma gravidade na parte de baixo recorta a borda de cima e nenhuma gravidade recorta as duas bordas.
clip_horizontal
Outra opção para definir se as bordas esquerda e/ou direita do filho vão ser recortadas nos
limites do contêiner. O recorte se baseia na gravidade horizontal: uma gravidade à esquerda recorta
a borda direita, uma gravidade à direita recorta a borda esquerda e nenhuma gravidade recorta as duas bordas.
android:mipMap
Booleano. Ativa ou desativa a dica de mipmap. Consulte setHasMipMap() para saber mais.
O valor padrão é "false".
android:tileMode
Palavra-chave. Define o modo agrupado. Quando o modo agrupado estiver ativado, o bitmap vai ser
repetido. A gravidade é ignorada quando o modo agrupado está ativado.
Precisa ser um dos valores constantes abaixo:
Valor
Descrição
disabled
Não coloca o bitmap em blocos. Esse é o valor padrão.
clamp
Replica a cor da borda quando o sombreador desenha fora dos limites originais.
repeat
Repete a imagem do sombreador na horizontal e na vertical.
mirror
Repete a imagem do sombreador na horizontal e na vertical, alternando imagens espelhadas para que
imagens adjacentes sempre fiquem emendadas.
Um NinePatch é uma imagem PNG em que é possível definir regiões extensíveis
que o Android dimensiona quando o conteúdo dentro da visualização excede os limites normais da imagem. Normalmente,
esse tipo de imagem é atribuído como o segundo plano de uma visualização que tem pelo menos uma dimensão definida
como "wrap_content".
Quando a visualização cresce para acomodar o conteúdo, a imagem Nine-Patch
também é redimensionada para corresponder ao tamanho da visualização. Um exemplo de uso de uma imagem Nine-Patch é o
segundo plano usado pelo widget padrão do Android Button, que precisa se estender para
acomodar o texto (ou a imagem) dentro do botão.
Da mesma forma que acontece com um bitmap normal, é possível referenciar um arquivo Nine-Patch diretamente
ou em um recurso definido pelo XML.
Obrigatório. Define a origem e as propriedades do Nine-Patch.
Atributos:
xmlns:android
String. Obrigatório. Define o namespace XML, que precisa ser
"http://schemas.android.com/apk/res/android".
android:src
Recurso drawable. Obrigatório. Referência a um arquivo
Nine-Patch.
android:dither
Booleano. Ativa ou desativa o pontilhamento do bitmap quando ele não
tem a mesma configuração de pixels que a tela, por exemplo, um bitmap ARGB 8888 em uma tela
RGB 565.
Um LayerDrawable é um objeto drawable
que gerencia uma matriz de outros drawables. Cada drawable na lista é renderizado na ordem da
lista. O último drawable da lista é renderizado no topo.
Cada drawable é representado por um elemento dentro de um único elemento .
Localização do arquivo:
res/drawable/filename.xml
O nome de arquivo é o ID do recurso.
Obrigatório. Precisa ser o elemento raiz. Contém um ou mais elementos .
Atributos:
xmlns:android
String. Obrigatório. Define o namespace XML, que precisa ser
"http://schemas.android.com/apk/res/android".
Define um drawable para ser colocado na camada de drawables em uma posição definida pelos atributos.
Precisa ser um filho de um elemento . Aceita elementos
filhos.
Atributos:
android:drawable
Recurso drawable. Obrigatório. Referência a um recurso
drawable.
android:id
ID de recurso. ID de recurso único para o drawable. Para criar um novo ID de recurso
para este item, use o formato:
"@+id/name". O símbolo de adição indica que ele foi criado como um novo
ID. Esse identificador é útil para
extrair e modificar o drawable com View.findViewById() ou Activity.findViewById().
android:top
Dimensão. O deslocamento de cima, como um valor de dimensão ou recurso de dimensão.
android:right
Dimensão. O deslocamento à direita, como um valor de dimensão ou um recurso de dimensão.
android:bottom
Dimensão. O deslocamento de baixo, como um valor de dimensão ou recurso de dimensão.
android:left
Dimensão. O deslocamento à esquerda, como um valor de dimensão ou recurso de dimensão.
Por padrão, todos os itens drawable são redimensionados para corresponder ao tamanho da visualização que os contém. Portanto,
colocar as imagens em uma lista de camadas em diferentes posições pode aumentar o tamanho da visualização e
redimensionar algumas imagens.
Para evitar
redimensionar os itens na lista, use um elemento dentro do elemento para especificar o drawable e definir a gravidade de algo que não precisa ser
redimensionado, como "center". Por exemplo, o abaixo define um item
que é redimensionado para corresponder à visualização que o contém:
android:drawable="@drawable/image"/>
Para evitar o redimensionamento, o exemplo abaixo usa um elemento com
gravidade centralizada:
Esse exemplo usa um elemento aninhado para definir o recurso
drawable para cada item com uma gravidade "center". Isso garante que nenhuma das imagens seja redimensionada para
corresponder ao tamanho do contêiner devido ao redimensionamento causado por imagens deslocadas.
Este layout XML aplica o drawable a uma visualização:
StateListDrawable é um objeto drawable definido no XML
que usa várias imagens para representar o mesmo gráfico, dependendo do estado
do objeto. Por exemplo, o estado de um widget Button pode ser tocado, focado
ou nenhuma dessas opções. Ao usar um drawable de lista de estados, você pode fornecer uma imagem de plano de fundo diferente para cada
estado.
Você descreve uma lista de estados em um arquivo XML. Cada gráfico é representado por um elemento dentro de um único elemento . Cada
usa vários atributos para descrever o estado em que ele é usado como o gráfico do
drawable.
Durante cada mudança, a lista de estados é percorrida de cima a baixo, e o primeiro item que
corresponde ao estado atual é usado. A seleção não se baseia na "melhor"
correspondência, mas no primeiro item que atende aos critérios mínimos do estado.
Localização do arquivo:
res/drawable/filename.xml
O nome de arquivo é o ID do recurso.
Obrigatório. Precisa ser o elemento raiz. Contém um ou mais elementos .
Atributos:
xmlns:android
String. Obrigatório. Define o namespace XML, que precisa ser
"http://schemas.android.com/apk/res/android".
android:constantSize
Booleano. "True", se o tamanho interno informado do drawable permanece constante à medida que o estado
muda (o tamanho é o máximo de todos os estados); “false”, se o tamanho varia com base
no estado atual. O valor padrão é "false".
android:dither
Booleano. "True", para permitir o pontilhamento do bitmap quando ele não tem a mesma configuração
de pixels que a tela, por exemplo, um bitmap ARGB 8888 em uma tela RGB 565; "false"; para
desativar o pontilhamento. O padrão é "true".
android:variablePadding
Booleano. "True", se o padding do drawable muda com base no estado
atual selecionado; "false", se o padding precisa permanecer o mesmo, com base no padding
máximo de todos os estados. A ativação desse recurso exige que você lide com
a execução do layout quando o estado muda, o que frequentemente não é aceito. O valor padrão é "false".
Define um drawable para ser usado durante certos estados, conforme descrito por seus atributos. Precisa ser um
filho de um elemento .
Atributos:
android:drawable
Recurso drawable. Obrigatório. Referência a um recurso drawable.
android:state_pressed
Booleano. "True", se o item é usado quando o objeto é tocado, por exemplo, quando um botão
é pressionado; "false", se o item é usado no estado padrão sem toque.
android:state_focused
Booleano. "True", se o item é usado quando o objeto tem foco de entrada,
por exemplo, quando o usuário seleciona uma entrada de texto; "false", se o item é usado
no estado padrão sem foco.
android:state_hovered
Booleano. "True", se o item é usado quando o cursor passa sobre o objeto;
"false", se o item é usado no estado padrão sem cursor flutuante sobre ele. Geralmente, esse
drawable é o mesmo usado para o estado "focado".
Introduzido no nível 14 da API.
android:state_selected
Booleano. "True", se o item é usado quando o objeto é a seleção atual
do usuário ao navegar com um controle direcional, por exemplo, ao navegar por uma lista
com um botão direcional; "false", se o item é usado quando o objeto não está selecionado.
O estado selecionado é usado quando android:state_focused não é suficiente,
por exemplo, quando a visualização em lista tem foco e um item dentro dela é selecionado com um botão direcional.
android:state_checkable
Booleano. "True", se o item é usado quando o objeto é selecionável; "false", se o
item é usado quando o objeto não é selecionável. Essa função é útil somente quando o objeto pode
fazer a transição entre um widget selecionável e não selecionável.
android:state_checked
Booleano. "True", se o item é usado quando o objeto está selecionado; "false", se o item é usado quando o objeto não está selecionado.
android:state_enabled
Booleano. "True", se o item é usado quando o objeto está ativado,
ou seja, é capaz de receber eventos de toque ou clique; "false", se o item é usado quando o objeto está
desativado.
android:state_activated
Booleano. "True", se o item é usado quando o objeto é ativado como
a seleção persistente, por exemplo, para "destacar" o item da lista selecionado anteriormente em uma visualização
de navegação persistente; "false", se o item é usado quando o objeto não está ativado.
Introduzido no nível 11 da API.
android:state_window_focused
Booleano. "True", se o item é usado quando a janela do aplicativo está em foco, o que significa que
o app está em primeiro plano; "false", se o item é usado quando a janela do
aplicativo não tem foco, por exemplo, quando a aba de notificações está suspensa ou uma caixa de diálogo é mostrada.
Observação: o Android usa o primeiro item da lista de estados que
corresponde ao estado atual do objeto. Portanto, se o primeiro item na lista não tem
nenhum dos atributos de estado acima, ele é aplicado sempre. É por isso que o
valor padrão precisa sempre ser o último, como demonstrado no exemplo a seguir.
Um drawable que gerencia vários drawables alternativos a que foram atribuídos valores numéricos
máximos. Definir o valor de nível do drawable com setLevel() carrega o recurso drawable na
lista de nível que tem um valor de android:maxLevel maior ou igual ao
transmitido ao método.
Localização do arquivo:
res/drawable/filename.xml
O nome de arquivo é o ID do recurso.
TransitionDrawable é um objeto drawable
que pode fazer a transição entre dois outros recursos drawables.
Cada drawable é representado por um elemento dentro de um único elemento . O máximo aceito é dois itens. Para fazer a transição para frente, chame
startTransition(). Para
fazer a transição para trás, chame reverseTransition().
Localização do arquivo:
res/drawable/filename.xml
O nome de arquivo é o ID do recurso.
Obrigatório. Precisa ser o elemento raiz. Contém um ou mais elementos .
Atributos:
xmlns:android
String. Obrigatório. Define o namespace XML, que precisa ser
"http://schemas.android.com/apk/res/android".
Define um drawable que é usado como parte da transição de drawables.
Precisa ser um filho de um elemento . Aceita elementos
filhos.
Atributos:
android:drawable
Recurso drawable. Obrigatório. Referência a um recurso
drawable.
android:id
ID de recurso. ID de recurso único para o drawable. Para criar um novo ID de recurso
para este item, use o formato:
"@+id/name". O símbolo de adição indica que ele foi criado como um novo
ID. Esse identificador é útil para
extrair e modificar o drawable com View.findViewById() ou Activity.findViewById().
android:top
Número inteiro. O deslocamento de cima em pixels.
android:right
Número inteiro. O deslocamento direito em pixels.
android:bottom
Número inteiro. O deslocamento de baixo em pixels.
android:left
Número inteiro. O deslocamento esquerdo em pixels.
É um drawable definido em XML que faz o encarte de outro drawable em uma distância especificada. É útil
quando uma visualização precisa de um segundo plano menor do que os limites atuais da visualização.
Localização do arquivo:
res/drawable/filename.xml
O nome de arquivo é o ID do recurso.
É um drawable definido em XML que recorta outro drawable com base no nível atual. É possível
controlar o quanto o drawable filho é recortado em largura e altura com base no nível, bem como usar
uma gravidade para controlar onde ele é posicionado no contêiner geral. Esse drawable é usado com mais frequência para implementar
elementos como barras de progresso.
Localização do arquivo:
res/drawable/filename.xml
O nome de arquivo é o ID do recurso.
Obrigatório. Define o desenhável de recorte. Precisa ser o elemento raiz.
Atributos:
xmlns:android
String. Obrigatório. Define o namespace XML, que precisa ser
"http://schemas.android.com/apk/res/android".
android:drawable
Recurso drawable. Obrigatório. Referência a um recurso
drawable a ser recortado.
android:clipOrientation
Palavra-chave. A orientação para o recorte.
Precisa ser um dos valores constantes abaixo:
Valor
Descrição
horizontal
Recorta o drawable horizontalmente.
vertical
Recorta o drawable verticalmente.
android:gravity
Palavra-chave. Especifica onde recortar dentro do drawable.
Precisa ser um ou mais dos seguintes valores constantes, separados por |:
Valor
Descrição
top
Coloca o objeto no topo do contêiner sem mudar o tamanho. Quando clipOrientation é "vertical", o recorte ocorre na parte de baixo do drawable.
bottom
Coloca o objeto na parte de baixo do recipiente sem alterar o tamanho dele. Quando clipOrientation é "vertical", o recorte ocorre na parte de cima do drawable.
left
Coloca o objeto na borda esquerda do contêiner sem mudar o tamanho. Esse é o
padrão. Quando clipOrientation é "horizontal", o recorte ocorre no lado direito do drawable.
right
Coloca o objeto na borda direita do recipiente sem alterar o tamanho. Quando clipOrientation é "horizontal", o recorte ocorre no lado esquerdo do drawable.
center_vertical
Coloca o objeto no centro vertical do contêiner sem mudar o tamanho. O recorte se comporta
da mesma forma quando a gravidade é "center".
fill_vertical
Aumenta o tamanho vertical do objeto, se necessário, para que ele preencha completamente o recipiente. Quando clipOrientation é "vertical", não ocorre nenhum recorte porque o drawable preenche o
espaço vertical (a não ser que o nível do drawable seja 0, quando não estiver visível).
center_horizontal
Coloca o objeto no centro horizontal do contêiner sem mudar o tamanho.
O recorte se comporta da mesma forma quando a gravidade é "center".
fill_horizontal
Aumenta o tamanho horizontal do objeto, se necessário, para que ele preencha completamente o recipiente. Quando
clipOrientation é "horizontal", não ocorre nenhum recorte porque o drawable preenche o
espaço horizontal (a não ser que o nível do drawable seja 0, quando não estiver visível).
center
Coloca o objeto no centro do contêiner, nos eixos vertical e horizontal, sem
mudar o tamanho. Quando clipOrientation é "horizontal", o recorte ocorre à esquerda e à direita. Quando clipOrientation é "vertical", o recorte ocorre em cima e embaixo.
fill
Aumenta o tamanho horizontal e vertical do objeto, se necessário, para que ele preencha completamente
o contêiner. Não ocorre nenhum recorte porque o drawable preenche
o espaço horizontal e vertical (a não ser que o nível do drawable seja 0, quando não estiver
visível).
clip_vertical
Outra opção que pode ser definida para que as bordas de cima e/ou de baixo do filho sejam recortadas
nos limites do contêiner. O recorte se baseia na gravidade vertical: uma gravidade no topo recorta a
borda de baixo, uma gravidade na parte de baixo recorta a borda de cima e nenhuma gravidade recorta as duas bordas.
clip_horizontal
Outra opção para definir se as bordas esquerda e/ou direita do filho vão ser recortadas nos
limites do contêiner. O recorte se baseia na gravidade horizontal: uma gravidade à esquerda recorta
a borda direita, uma gravidade à direita recorta a borda esquerda e nenhuma gravidade recorta as duas bordas.
Aumentar o nível reduz a quantidade de recorte e revela lentamente a imagem. Confira como ele fica
em um nível de 7.000:
Observação: o nível padrão é 0, que é totalmente recortado para que a imagem
não fique visível. Quando o nível é 10.000, a imagem não é recortada e fica totalmente visível.
Obrigatório. Define o desenhável de escala. Precisa ser o elemento raiz.
Atributos:
xmlns:android
String. Obrigatório. Define o namespace XML, que precisa ser
"http://schemas.android.com/apk/res/android".
android:drawable
Recurso drawable. Obrigatório. Referência a um recurso
drawable.
android:scaleGravity
Palavra-chave. Especifica a posição da gravidade após o redimensionamento.
Precisa ser um ou mais dos seguintes valores constantes, separados por |:
Valor
Descrição
top
Coloca o objeto no topo do contêiner sem mudar o tamanho.
bottom
Coloca o objeto na parte de baixo do contêiner sem mudar o tamanho.
left
Coloca o objeto na borda esquerda do contêiner sem mudar o tamanho. Esse é o
padrão.
right
Coloca o objeto na borda direita do recipiente sem alterar o tamanho.
center_vertical
Coloca o objeto no centro vertical do contêiner sem mudar o tamanho.
fill_vertical
Aumenta o tamanho vertical do objeto, se necessário, para que ele preencha completamente o contêiner.
center_horizontal
Coloca o objeto no centro horizontal do contêiner sem mudar o tamanho.
fill_horizontal
Aumenta o tamanho horizontal do objeto, se necessário, para que ele preencha completamente o contêiner.
center
Coloca o objeto no centro do contêiner, nos eixos vertical e horizontal, sem
mudar o tamanho.
fill
Aumenta o tamanho horizontal e vertical do objeto, se necessário, para que ele preencha completamente
o contêiner.
clip_vertical
Outra opção que pode ser definida para que as bordas de cima e/ou de baixo do filho sejam recortadas
nos limites do contêiner. O recorte se baseia na gravidade vertical: uma gravidade no topo recorta a
borda de baixo, uma gravidade na parte de baixo recorta a borda de cima e nenhuma gravidade recorta as duas bordas.
clip_horizontal
Outra opção para definir se as bordas esquerda e/ou direita do filho vão ser recortadas nos
limites do contêiner. O recorte se baseia na gravidade horizontal: uma gravidade à esquerda recorta
a borda direita, uma gravidade à direita recorta a borda esquerda e nenhuma gravidade recorta as duas bordas.
android:scaleHeight
Porcentagem. A altura da escala, definida como uma porcentagem do limite
do drawable. O formato do valor é XX%, por exemplo, 100% ou 12,5%.
android:scaleWidth
Porcentagem. A largura da escala, definida como uma porcentagem do limite
do drawable. O formato do valor é XX%, por exemplo, 100% ou 12,5%.
Obrigatório. O desenhável de formato. Precisa ser o elemento raiz.
Atributos:
xmlns:android
String. Obrigatório. Define o namespace XML, que precisa ser
"http://schemas.android.com/apk/res/android".
android:shape
Palavra-chave. Define o tipo de formato. Os valores válidos são:
Valor
Descrição
"rectangle"
Um retângulo que preenche a visualização que o contém. É o formato padrão.
"oval"
Um formato oval que se encaixa nas dimensões da visualização que o contém.
"line"
Uma linha horizontal da largura da visualização que a contém. Esse
formato exige o elemento para definir a largura da
linha.
"ring"
Forma circular.
Os atributos abaixo são usados apenas quando android:shape="ring":
android:innerRadius
Dimensão. O raio da
parte interna do círculo (o buraco no centro), como um valor de dimensão ou um recurso de dimensão.
android:innerRadiusRatio
Ponto flutuante. O raio da parte interna
do círculo, expresso como uma relação da largura do círculo. Por exemplo, se for android:innerRadiusRatio="5", o raio interno vai ser igual à largura do círculo dividida por 5. Esse
valor é substituído por android:innerRadius. O valor padrão é 9.
android:thickness
Dimensão. A espessura do
círculo, como um valor de dimensão ou recurso de dimensão.
android:thicknessRatio
Ponto flutuante. A espessura do círculo
definida como uma relação da largura dele. Por exemplo, se for android:thicknessRatio="2",
a espessura será igual à largura do círculo dividida por 2. Esse valor é substituído por android:innerRadius. O valor padrão é 3.
android:useLevel
Booleano. "True", se usado como
um LevelListDrawable. Normalmente é "false".
Caso contrário, o formato pode não aparecer.
Cria cantos arredondados para a forma. É aplicado apenas quando a forma é um retângulo.
Atributos:
android:radius
Dimensão. O raio para todos os cantos, como um valor de dimensão ou recurso de dimensão. É substituído para cada
canto pelos atributos abaixo.
android:topLeftRadius
Dimensão. O raio para o canto esquerdo de cima, como um valor de dimensão ou recurso de dimensão.
android:topRightRadius
Dimensão. O raio para o canto direito de cima, como um valor de dimensão ou recurso de dimensão.
android:bottomLeftRadius
Dimensão. O raio para o canto esquerdo de baixo, como um valor de dimensão ou recurso de dimensão.
android:bottomRightRadius
Dimensão. O raio para o canto inferior direito, como um valor ou recurso de dimensão.
Observação: todos os cantos devem receber inicialmente um raio
maior que 1; caso contrário, nenhum deles será arredondado. Para especificar cantos
não arredondados, uma alternativa é usar android:radius para definir um raio padrão
de canto maior que 1 e substituir cada um deles pelos valores que você realmente
quer, indicando zero ("0dp") onde não quiser cantos arredondados.
Especifica uma cor de gradiente para o formato.
Atributos:
android:angle
Número inteiro. O ângulo do gradiente em graus. 0 é da esquerda para a direita, 90 é
de baixo para cima. Precisa ser um múltiplo de 45. O padrão é 0.
android:centerX
Ponto flutuante. A posição X relativa do centro do gradiente (0 - 1,0).
android:centerY
Ponto flutuante. A posição Y relativa do centro do gradiente (0 - 1,0).
android:centerColor
Cor. Cor opcional entre as cores inicial e final, como um
valor hexadecimal ou recurso de cor.
android:endColor
Cor. A cor final, como um valor
hexadecimal ou recurso de cor.
android:gradientRadius
Ponto flutuante. O raio do gradiente. Aplicado somente quando android:type="radial".
android:startColor
Cor. A cor inicial, como um valor
hexadecimal ou recurso de cor.
android:type
Palavra-chave. O tipo de padrão de gradiente a ser aplicado. Os valores válidos são:
Valor
Descrição
"linear"
Um gradiente linear. Esse é o padrão.
"radial"
Um gradiente radial. A cor inicial é a cor do centro.
Padding a ser usado no elemento de visualização que o contém. Preenche a posição do conteúdo da
visualização, não o formato.
Atributos:
android:left
Dimensão. Padding esquerdo, como um valor de dimensão ou recurso de dimensão.
android:top
Dimensão. Padding de cima, como um valor de dimensão ou recurso de dimensão.
android:right
Dimensão. Padding direito, como um valor de dimensão ou recurso de dimensão.
android:bottom
Dimensão. Padding de baixo, como um valor de dimensão ou recurso de dimensão.
O tamanho do formato.
Atributos:
android:height
Dimensão. A altura do formato, como um valor de dimensão ou recurso de dimensão.
android:width
Dimensão. A largura do formato, como um valor de dimensão ou recurso de dimensão.
Observação: por padrão, o formato é redimensionado para o tamanho da visualização
que o contém, proporcionalmente às dimensões definidas aqui. Ao usar o formato em uma ImageView, você pode restringir o redimensionamento definindo o android:scaleType como "center".
Uma cor sólida para preencher o formato.
Atributos:
android:color
Cor. A cor a ser aplicada à forma, como um valor hexadecimal
ou recurso de cor.
Uma linha de traço para o formato.
Atributos:
android:width
Dimensão. A espessura da linha, como um valor de dimensão ou recurso de dimensão.
android:color
Cor. A cor da linha, como um
valor hexadecimal ou recurso de cor.
android:dashGap
Dimensão. A distância entre os traços da linha, como um valor de dimensão ou recurso de dimensão. Só é válida se android:dashWidth estiver definido.
android:dashWidth
Dimensão. O tamanho de cada linha de traço, como um valor de dimensão ou recurso de dimensão. Só é válida se android:dashGap estiver definido.
Exemplo:
Arquivo XML salvo em res/drawable/gradient_box.xml:
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2024-08-23 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2024-08-23 UTC."],[],[]]