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?

È stato utile?

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">
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top