2013-06-14 10 views
19

È valido per una forma estraibile in Android per utilizzare fill_parent per le sue dimensioni?Una forma estraibile può avere la dimensione impostata su fill_parent?

<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> 

EDIT

Questo per lo sfondo della ImageButton vista. Voglio che l'icona del pulsante abbia un cerchio dietro di esso, ma non sempre so quale sarà la dimensione del pulsante (diverse dimensioni per layout).

+4

Se si desidera riempire l'intero layout rimuovere il tag di formato – Blackbelt

+0

non avrei pensato così - in questa fase non sono collegati a nessuna vista. Inoltre, secondo i documenti, sono validi solo i valori delle dimensioni. –

+0

Grazie ragazzi, ho aggiornato la domanda per chiarire. – cgTag

risposta

9
Non

davvero. Non si utilizza un solo ShapeDrawable. Se si passa attraverso il documento ShapeDrawable, si vedrà (si sta già li utilizza nel tag) che l'unica valida attributi ci sono px, dp, sp, in e mm

una citazione dal documento: android:width="...."

unità disponibili sono: px (pixel), dp (pixel indipendenti dalla densità), sp (scal pixel ED in base alle dimensioni del font preferito), in (pollici), mm (millimetri) Questo è vero per l'attributo: android:height

Questa è la speculazione da parte mia, ma ho il sospetto perché l'attributo fill_parent il valore non funzionerà è perché un ShapeDrawble, a differenza di un file XML Layout non avrà un contenitore genitore.

Tralasciando la <size.... /> attribuire interamente ed impostando la layout_width e layout_height su un Widget che farà riferimento detta ShapeDrawable è l'unica opzione che sospetto (se la fill_parent deve essere onorata).

+0

come fare non sono in grado di farlo è un codice? –

+0

@VikrantAlekar: Dovrai essere più specifico. Non capisco il tuo commento. –

0

Come pensate di utilizzare questa forma? Puoi impostarlo come src o sfondo per qualsiasi vista e impostare l'altezza della vista in "fill_parent" - è il modo più usuale.

+0

Cosa fare se si desidera posizionare la forma lungo la parte inferiore della vista principale –

0

Non è possibile farlo dal file xml, ma è possibile farlo dal file java. Basta usare

public final void resize (float width, float height)

+0

ridimensiona() su quale oggetto? –

Problemi correlati