36 votes

Android: motif de répétition de 9 patchs au lieu d'étirer

J'ai un fichier image de 9 patchs qui ressemble à ceci:

texte alternatif

Quand je l'utilise, il ressemble à ceci:

texte alternatif

Ce que je voulais réellement réaliser, c’est le point complet au centre répété au lieu d’être étiré . J'espère que c'est possible.

16voto

Muhammad Abdullah Points 1151

Je pense qu’il est impossible d’utiliser 9-Patch pour créer des motifs répétés (n’étendant que certaines zones), vous pouvez peut-être en savoir plus ici:

http://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch

15voto

...

Correction: si vous voulez que les points orange se répètent, vous ne pourrez pas utiliser uniquement les 9 patch PNG. 9 patch PNG ne peut étirer que la partie que vous lui avez demandé d'étirer. Il n'y a pas de mode de répétition avec 9 patch PNG.

Vous voudrez peut-être examiner la classe Bitmap. Il y a un tileMode que vous pourrez peut-être utiliser pour résoudre votre problème ici.

 <bitmap xmlns:android="http://schemas.android.com/apk/res/android"
            android:src="@drawable/stripe_bg"
            android:tileMode="repeat"
            android:antialias="true"
            android:dither="false"
            android:filter="false"
            android:gravity="left"
        />
 

-4voto

Chris L. Points 223

Tout d’abord, assurez-vous d’enregistrer votre image de 9 correctifs sous votre nom image_image.9.png et de la stocker dans le dossier res / drawable. Ensuite, dans votre fichier xml, définissez simplement le fond de la mise en page avec-- android: background = "@ drawable / your_image_name" et cela devrait fonctionner. Si cela ne fonctionne toujours pas, pouvez-vous publier votre mise en page XML?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X