android - layout_gravity - linearlayout parameters




passaggio di riferimento a layout_weight da dimensioni(dimensioni) (2)

Invece di dimensioni è possibile utilizzare l' integer per dichiarare e fare riferimento a numeri interi.

Esempio di dichiarazione in interi.xml:

<resources>
    <integer name="left">1</integer>
    <integer name="right">2</integer>
</resources>

Esempio di riferimento nel layout:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <FrameLayout
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:layout_weight="@integer/left" />

    <FrameLayout
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:layout_weight="@integer/right" />

</LinearLayout>

Ho bisogno di impostare pesi di layout diversi per dispositivi di dimensioni dello schermo differenti e voglio passare i valori dal file dimens, il problema è che il riferimento dal file dimens continua a generare errori

error: Error: Integer types not allowed (at 'progress_widget_item3_weight' with value '9').

o

error: Error: Float types not allowed (at 'progress_widget_item3_weight' with value '9.1').
<dimen name="progress_widget_item3_weight">9</dimen>

Come posso passare il valore dal file dimens per il layout_weight? Grazie


Non penso che tu possa farlo. La documentazione nel file xml dice solo float (nessuna dimension ) a differenza di layout_width ad esempio dove hai dimension .

Si può semplicemente usare un valore float hardcoded nei vari layout dipendenti dallo schermo.





android-linearlayout