Mettre à l'échelle l'image d'arrière-plan dans LinearLayout
Je vais avoir le problème suivant;
J'ai un LinearLayout avec une ScrollView, dans la ScrollView est coutume de vue. Maintenant, je veux mettre une image en arrière-plan de la LinearLayout et de garder l'image dans sa taille d'origine. Mais quand j'ai mis la propriété background de LinearLayout il s'étend pour s'adapter à la totalité de l'écran. Comment puis-je faire en sorte que l'image conserve sa taille d'origine?
Mon xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/root"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/some_drawable">
<ScrollView
android:id="@+id/scrollview"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:fillViewport="true">
<some.custom.layout
android:id="@+id/mainLayout"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
/>
</ScrollView>
</LinearLayout>
source d'informationauteur Joris | 2011-04-29
Vous devez vous connecter pour publier un commentaire.
Essayez d'utiliser FrameLayout avec une ImageView et LinearLayout à l'intérieur. Par exemple, essayez de changer l'alpha de l'image et déplacez-le de premier plan dans votre FrameLayout, donc le LinearLayout reste en arrière-plan. Espérons que cette aide!
Exemple de Code pour Egor réponse:
Vous pouvez prendre un coup d'oeil à la InsetDrawable. Ou alors il aurait probablement besoin d'-vous à la sous-classe à votre disposition pour dessiner la façon dont vous souhaitez que l'élément d'arrière-plan n'a pas la capacité dont vous avez besoin.
Alternativement à ColdForged de la suggestion, vous pourriez passer de la
LinearLayout
àRelativeLayout
et l'utilisationImageView
pour afficher l'image au lieu de changer de fond d'elle. Les points de vue dansRelativeLayout
peut nuire à la différence dansLinearLayout
.