Ho un'immagine che voglio affiancare orizzontalmente e ho bisogno di farlo a livello di programmazione. Ho provato due modi, ed entrambi non funzionano.Android affiancato a livello di codice dell'immagine come sfondo
button_inner_shadow rappresenta l'navigation_background immagine rappresenta l'XML che supponiamo per affiancare l'immagine sopra
1: piastrelle di immagine direttamente
BitmapDrawable navigationBackground = new BitmapDrawable(BitmapFactory.decodeResource(
getResources(), R.drawable.button_inner_shadow));
navigationBackground.setTileModeX(Shader.TileMode.REPEAT);
navigationTextViews[id].setBackgroundDrawable(navigationBackground);
2: utilizzare XML immagine Mattonelle di
navigationBackground = new BitmapDrawable(BitmapFactory.decodeResource(
getResources(), R.drawable.navigation_background));
navigationTextViews[id].setBackgroundDrawable(navigationBackground);
navigation_background
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:dither="true"
android:src="@drawable/button_inner_shadow"
android:tileMode="repeat" />
Cosa sto sbagliando?
Io uso anche setBackgroundResource
per impostare il cambiamento del colore di sfondo in un'altra parte del programma e ho pensato che fosse un problema. Ho aggiunto navigationTextViews[id].setBackgroundResource(0);
, che dovrebbe rimuovere la risorsa di sfondo e che non funziona con le soluzioni di cui sopra che ho usato.
EDIT: navigationTextViews [] è un array di TextViews
quale errore hai ricevuto, post logcat? –
Non ho ricevuto un errore. – heero