Je veux répéter l'image avec ImageView
avec in RelativeLayout
. Est-il possible d'utiliser le XML Bitmap et d'utiliser le tilemode "repeat"
avec RelativeLayout
, parce que ce que j'ai vu sur Internet, ils traitent tous de LinearLayout
.
Toute aide ou conseil sera chaleureusement accueilli.
Créez un fichier XML nommé background dans le dossier Drawable
background.xml
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:src="@drawable/imagename"
Android:tileMode="repeat" />
Dans votre mise en page relative, ajoutez le XML ci-dessus comme arrière-plan
<RelativeLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:background="@drawable/background" />
Oui bien sûr, vous pouvez l'utiliser avec une mise en page relative. Utilisez-le comme arrière-plan de votre RelativeLayout. Je l'ai également utilisé dans mon projet.
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:orientation="horizontal"
Android:background="@drawable/top_header_bg_repeat"
Android:gravity="center">
top_header_bg_repeat.xml (in drawable folder)
----------------------------------------------
<bitmap
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:src="@drawable/top_header"
Android:tileMode="repeat"
Android:dither="true"/>
Set Bitmap in ImageView
----------------------
<ImageView
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:src="@drawable/top_header_bg_repeat"
Android:scaleType="fitXY"/>
<ImageView
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:background="@drawable/top_header_bg_repeat"/>
Oui c'est possible. Définissez votre image répétée comme Drawable (bitmap)
avec Android:tileMode="repeat"
en XML et utilisez-le comme arrière-plan de votre RelativeLayout
.
Dans toutes les demandes, il existe un petit problème si votre image sera grande et plus petite quelle que soit la taille de votre mise en page, l'image ne sera pas redimensionnée, répétez uniquement par X. Pour la répétition par Y, vous ne pouvez le faire que par programme.
Je résous mon problème comme ça (définir le remplissage par gravité)
drawable bg pour l'image
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:src="@drawable/table_cells_bg_img"
Android:tileMode="repeat" Android:gravity="fill" />
et sur mise en page
<?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="@dimen/table_cell_height">
<ImageView
Android:id="@+id/imageView1"
Android:layout_width="fill_parent"
Android:layout_height="@dimen/table_cell_height"
Android:scaleType="fitXY"
Android:src="@drawable/table_cells_bg"/>
<TextView
Android:id="@+id/txtActivityTime"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentTop="true"
Android:layout_toRightOf="@+id/avatarImage"
Android:text="TextView"
Android:textColor="@color/white"
Android:textSize="@dimen/font_size_middle" />
</RelativeLayout>
Et table_cells_bg_img c'est une image avec width = 1px et height = 1px
et etc. de mise en page, donc maintenant votre image est comme un arrière-plan et elle sera redimensionnée pour n'importe quelle taille de mise en page parent
Essayez, aidez peut-être. Pour être effacé dans mon cas, j'ai besoin d'une image d'arrière-plan en mosaïque à la taille réelle de la nappe répétée par coordonnée X (comme je peux le faire sur iOS). Alors je le résous comme je le décris.