web-dev-qa-db-fra.com

Une taille pouvant être dessinée peut-elle avoir sa taille définie sur fill_parent?

Est-il valide pour une forme pouvant être dessinée dans Android d'utiliser fill_parent pour sa taille?

<shape
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:shape="oval">

<solid
        Android:color="#666666"/>

<size
        Android:width="fill_parent"
        Android:height="fill_parent"/>
</shape>

MODIFIER

Ceci pour le fond des vues ImageButton. Je souhaite que l'icône du bouton soit entourée d'un cercle, mais je ne sais pas toujours quelle sera la taille du bouton (tailles différentes pour chaque mise en page).

23
cgTag

Pas vraiment. Ne pas utiliser une ShapeDrawable seule. Si vous parcourez le document ShapeDrawable, vous verrez (vous les utilisez déjà dans la balise) que les seuls attributs valides sont px, dp, sp, dans et mm

Une citation de la doc: Android:width="...."

Les unités disponibles sont: px (pixels), dp (pixels indépendants de la densité), sp (pixels mis à l'échelle en fonction de la taille de police préférée), en pouces, en mm (millimètres) Cela est vrai pour l'attribut: Android:height

C'est de la spéculation de ma part}, mais je soupçonne que la valeur de l'attribut fill_parent ne fonctionnera pas, car un ShapeDrawble, contrairement à un fichier XML Layout, n'aura pas de conteneur parent.

Abandonner entièrement l'attribut <size.... /> et définir les layout_width et layout_height sur un widget qui référencera ledit ShapeDrawable est la seule option que je suspecte (si le fill_parent doit être respecté).

11
Siddharth Lele

Comment comptez-vous utiliser cette forme? Vous pouvez le définir en tant que src ou arrière-plan pour n’importe quelle vue et définir la hauteur de la vue dans "fill_parent" - c’est plus simple.

0
Dimmerg

Je ne sais pas quel niveau d'API cela a pris effet, mais selon la documentation extensible par Shape, il sera mis à l'échelle proportionnellement à la vue. Ainsi, vous pouvez, par exemple, mettre width = 1dp et height = 1dp. Voir https://stuff.mit.edu/afs/sipb/project/Android/docs/guide/topics/resources/drawable-resource.html#Shape

0
androidguy