#android #android-layout
#Android #android-layout
Вопрос:
У меня есть верхний раздел для приложения, который в основном состоит из логотипа и прочего, а примерно нижняя половина должна быть кнопками.. Во внешнем контейнере у меня есть макет для логотипа и ImageView для создания разделительной линии между верхним и нижним и нижним макетом..
Проблема в том, что нижний макет имеет 2 линейных описания (одно из которых изначально скрыто), первое — это просто счетчик, а второе — 2 кнопки..
Я достиг «примерно 1/3 пространства), используя layout_weights в верхнем и нижнем линейном макете (2 и 1 соответственно), но когда я скрываю счетчик и показываю 2 кнопки в нижнем макете в коде, разделительная строка выдвигается вверх.. Я хочу, чтобы он оставался в том же месте (например, там, где он будет после того, как появятся 2 кнопки с самого начала, чтобы ему не нужно было перемещаться)
Я мог бы, вероятно, просто добавить некоторый запас к исходному, чтобы соответствовать ему, но я чувствую, что это вызовет проблемы в будущем на разных устройствах.
Как я могу выполнить этот подвиг?
Комментарии:
1. вы установили весовую сумму в макете, который содержит верхние и нижние линейные описания?
Ответ №1:
Я думаю, вы, возможно, пренебрегаете настройкой android:layout_height="0dp"
на LinearLayouts, которые вы установили android:layout_weight="1"
. Если вы сделаете это, оно должно заполнить пространство так, как вы хотите, и вы можете сделать layoutView.setVisibility(View.GONE)
и layoutView.setVisibility(View.VISIBLE)
для переключения представлений.