Arrière-plan dans l'onglet widget ignorer l'échelle
-
18-09-2019 - |
Question
J'ai essayé d'utiliser un fond (480x320) pour le contenu de mon onglet. L'utilisation d'un xml comme étirables, je devrais être en mesure de réduire l'image. Cela fonctionne très bien en dehors du tabhost / tabactivity. Si je tente de l'utiliser à l'intérieur du tabcontent, le scaleType ne fonctionne pas. Il ignore tous les scaleType j'ai essayé.
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 dans 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"/>
couse j'ai vérifié si le xml est vraiment utilisé en changeant l'image, à l'image modifiée de sorte que le XML est utilisé.
La mise à l'échelle utilisée semble être fitXY, parce que tout le fond est visible, mais le rapport d'aspect est ignoré.
Quelques idées?
La solution
Essayez simplement de placer ce à l'intérieur du RelativeLayout et ne pas utiliser votre drawable de fond:
<Drawable
android:src="@drawable/background_img"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:scaleType="fitCenter" />
Comme éléments à l'intérieur du relativelayout peuvent se chevaucher, ce oughta travail, et en utilisant un Drawable dans la mise en page de façon indépendante au lieu d'un Bitmap inclus dans le background_src élément pourrait vous donner plus de flexibilité.
Autres conseils
comme arrière-plan ur balise tabhost pas dans la mise en page de tabcontent. qui est
<TabHost android:background="@drawable/background">