Сочетание layout_weight и maxHeight? - PullRequest
3 голосов
/ 10 февраля 2012

У меня есть следующая настройка макета "панели кнопок":

<LinearLayout
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="vertical">
  <RelativeLayout
    android:id="@+id/button_bar"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="0.1"
    android:maxHeight="86px"
    android:orientation="horizontal">
    <Button
      android:id="@+id/home_button"
      android:layout_width="wrap_content"
      android:layout_height="fill_parent"
      android:layout_alignParentLeft="true"/>
    <Button
      android:id="@+id/level_button"
      android:layout_width="wrap_content"
      android:layout_height="fill_parent"
      android:layout_toRightOf="@+id/home_button"/>
    <Button
      android:id="@+id/help_button"
      android:layout_width="wrap_content"
      android:layout_height="fill_parent"
      android:layout_toRightOf="@+id/level_button"/>
    <Button
      android:id="@+id/sound_button"
      android:layout_width="wrap_content"
      android:layout_height="fill_parent"
      android:layout_alignParentRight="true"/>
  </RelativeLayout>
  <View
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="0.9"/>
</LinearLayout>

Я хочу, чтобы высота панели кнопок (RelativeLayout) составляла 10% от высоты экрана, поэтому я использовал layout_weight = "0.1"+ layout_weight = "0,9", но не более 86 пикселей, поэтому я попытался использовать maxHeight = "86px", но это не сработало.

Есть ли у вас какие-либо подсказки, как добиться комбинированной высоты 10%с ограничением макета постоянной высоты, пожалуйста?

1 Ответ

1 голос
/ 12 декабря 2013

Это довольно простое и, возможно, самое чистое решение для подкласса LinearLayout и создания собственного расчета макета.

Просто переопределите onLayout() и onMeasure().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...