Vejo muitos aplicativos que usam uma imagem em tela cheia como plano de fundo. Isto é um exemplo:
Quero usar isso em um projeto, a melhor maneira que encontrei até agora para fazer isso é usar uma imagem de tamanho grande, colocá-la em ImageView
e usar android: adjustViewBounds="true"
para ajustar as margens
O problema é que, se uma tela com uma resolução muito alta, a imagem fica aquém.
Outra opção em que pensei é usar a imagem em a FrameLayout
, com match_parent
in width
e height
como background ... isso amplia a imagem, mas acho que o resultado não é muito bom.
Como você faria?
android
background
imageview
android-framelayout
Sergio76
fonte
fonte
android:scaleType="centerCrop"
Respostas:
Existem várias maneiras de fazer isso.
Opção 1:
Crie imagens perfeitas diferentes para diferentes dpi e coloque-as na pasta drawable relacionada. Depois defina
android:background="@drawable/your_image"
Opção 2:
Adicione uma única imagem grande. Use FrameLayout. Como primeiro filho, adicione um
ImageView
. Defina o seguinte no seu ImageView.fonte
Outra opção é adicionar uma única imagem (não necessariamente grande) nos drawables (vamos chamá-la de backgroung.jpg), criar um ImageView iv_background na raiz do seu xml sem o atributo "src". Em seguida, no método onCreate da atividade correspondente:
Sem recorte, sem muitas imagens de tamanhos diferentes. Espero que ajude!
fonte
Você deve colocar as várias imagens de tamanho na pasta a seguir
para mais detalhes visite este link
ldpi
mdpi
hdpi
xhdpi
xxhdpi
e use o plano de fundo RelativeLayout ou LinearLayout em vez de usar o ImageView como exemplo a seguir
fonte
Unexpected namespace prefix "xmlns" found for tag RelativeLayout
A respeito
android:background="@drawable/your_image"
no layout principal da sua atividade?
Dessa forma, você também pode ter imagens diferentes para diferentes densidades de tela, colocando-as nas
res/drawable-**dpi
pastas apropriadas .fonte
Já faz um tempo desde que isso foi publicado, mas isso me ajudou.
Você pode usar layouts aninhados. Comece com um RelativeLayout e coloque seu ImageView nele.
Defina altura e largura como match_parent para preencher a tela.
Defina scaleType = "centreCrop" para que a imagem caiba na tela e não seja esticada.
Em seguida, você pode colocar outros layouts como faria normalmente, como o LinearLayout abaixo.
Você pode usar android: alpha para definir a transparência da imagem.
fonte
Se você deseja que sua imagem mostre por trás de uma barra de ação transparente, coloque o seguinte na definição de estilo do seu tema:
Aproveitar!
fonte
usa isto
na sua atividade, primeiro layout linear ou relativo.
fonte
De acordo com a resposta do NoToast, você precisaria ter várias versões de "sua_image" em seus res / drawable-ldpi, mdpi, hdpi, x-hdpi (para telas xtra grandes), remova match_parent e mantenha o android: AdjustViewBounds = " verdade"
fonte
Adicione
android:background="@drawable/your_image"
dentro do seu Relativelayout / Linearlayout Worked.fonte
Se você tem o bg.png como sua imagem de fundo, simplesmente:
fonte
Trabalhando. você deve tentar isso:
fonte
three step for put background
1) você deve escolher sua imagem semelhante. por exemplo: insira a descrição da imagem aqui
2) Então você copia esta imagem no drawable. aviso: você deve escolher tipos abreviados para a imagem do nome.
insira a descrição da imagem aqui
3) você vai para a página xml Pretendido e escreve:
android: background = "id picture", por exemplo, meu id de imagem é @ drawable / download.
insira a descrição da imagem aqui
terminar.
fonte
A maneira mais fácil:
Etapa 1: abrir o arquivo AndroidManifest.xml
Você pode ver o arquivo aqui!
Etapa 2: Localize
android:theme="@style/AppTheme" >
Etapa 3: mude para
android:theme="@style/Theme.AppCompat.NoActionBar" >
Etapa 4: Em seguida, adicione ImageView & Image
Etapa 4: É isso aí!
fonte