Я работаю над линейной компоновкой для моего простого приложения для Android. Я хочу, чтобы часть двух представлений динамически менялась в зависимости от размера (Я хочу иметь, для строки слева направо первые 20% пустые, а весь контент находится в остальной части 80%). Для этого подхода я выбрал вес для другого вида. Я создал вложенный линейный макет для этого подхода. Например, иерархия компоновки выглядит примерно так.LinearLayout с процентом пустое пространство
<linearLayout> //parent layout
<linearLayout //child 1 layout
android:layout_weight="1">
//so that this view occupy 20% of the space regardless the width of device. I intensionally wanna keep this view empty.
</linearLayout>
<linearLayout //child 2 layout
android:layout_weight="4">
//so that this view occupy 80% of the space regardless the width of device. and
//inside this view I have whatever view I wanna add on it.
<EditText>
<ImageView>
</linearLayout>
</linearLayout>
При таком подходе Lint в Android Studio сказать мне следующие предупреждения:
Это Уплотненный Layout. Макеты компоновки требуют, чтобы виджет измерялся дважды. Когда LinearLayout с ненулевыми весами вложен внутри другого LinearLayout с ненулевыми весами, число измерений увеличивается экспоненциально.
ребенок 1 макет бесполезно: Это
LinearLayout
вид бесполезно (без детей, ниbackground
, ниid
, неstyle
)
Может кто-нибудь адрес мне правильный макет для использования в целях для динамического изменения макета в зависимости от размера устройства? Как правильно настроить пустое пространство для случая с линейным макетом?
Это именно то, что я ищу. Благодарю. –