Sfondo in widget di scheda ignorare il ridimensionamento
-
18-09-2019 - |
Domanda
Ho cercato di utilizzare uno sfondo (480x320) per i miei contenuti scheda. Utilizzando un XML come disegnabile, dovrei essere in grado di scalare l'immagine. Questo funziona bene al di fuori del tabhost / tabactivity. Se cerco di usarlo all'interno del tabcontent, lo scaleType non funziona. Egli ignora ogni scaleType ho provato.
tabcontent:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/background">
<include layout="@layout/main_list" />
</RelativeLayout>
background.xml in res / drawable
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/background_img"
android:scaleType="centerInside"/>
Di couse ho controllato se il xml è realmente utilizzato cambiando l'immagine, l'immagine ha cambiato in modo che il XML viene utilizzato.
La scala utilizzata sembra essere fitXY, perché l'intero sfondo è visibile ma la razione aspetto viene ignorato.
Alcune idee?
Soluzione
Prova solo ponendo questo all'interno del RelativeLayout ma non usando drawable sfondo:
<Drawable
android:src="@drawable/background_img"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:scaleType="fitCenter" />
Poiché elementi all'interno del relativelayout possono sovrapporsi, questo oughta lavoro, e utilizzando un Drawable nel layout indipendentemente anziché una bitmap inserita come elemento background_src potrebbe dare maggiore flessibilità.
Altri suggerimenti
impostare lo sfondo a ur tabhost tag non nel layout tabcontent. cioè
<TabHost android:background="@drawable/background">