#android #scrollview #android-relativelayout
#Android #просмотр прокрутки #android-relativelayout
Вопрос:
У меня возникли некоторые проблемы с разделением экрана на две части. Я не знаю, с чего начать на самом деле. Все мои макеты до сих пор использовали RelativeLayout. В принципе, я хочу иметь прокручиваемый вид в верхней части 70% (или около того) экрана и две кнопки в нижней части 30% (или около того) экрана. Scrollview будет заполнен несколькими текстовыми представлениями. Вот мой простой код:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/stonerepeat"
android:gravity="center_horizontal"
>
<Button
android:id="@ id/back"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Looks good"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginBottom="10dp"
>
</Button>
<Button
android:id="@ id/stats"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Hero Stats"
android:layout_alignLeft="@ id/back"
android:layout_alignRight="@ id/back"
android:layout_above="@ id/back"
android:layout_marginBottom="3dp"
>
</Button>
</RelativeLayout>
Комментарии:
1. Вы можете вкладывать макеты. Итак, что вам нужно сделать, это иметь два макета второго уровня, где один из них будет прокручивать его содержимое, а другой, фиксированный, будет прикреплен к нижней части и будет содержать только кнопки. Затем вам нужно поиграть со свойствами, пока не получите правильный результат.
2. должен ли я вкладывать относительные или линейные макеты? Я не уверен, как бы я не позволил им перекрываться. кнопки поверх опущенного scrollview или scrollview полностью скрывают кнопки
3. существует более одного способа снять кожу с кошки. Я хотел сказать, что вам нужно поэкспериментировать, чтобы понять, как работает этот макет (и он очень мощный). Без понимания вы можете получить решение от кого-то, но вы не сможете изменить или повторно внедрить его в будущем.
Ответ №1:
Если вам нужны проценты, самый простой способ — использовать LinearLayout
веса и. Что-то вроде:
<LinearLayout android:orientation="vertical" ...>
<ScrollView android:layout_weight="7" ... />
<RelativeLayout android:layout_weight="3" ...>
<Button ... />
<Button ... />
</RelativeLayout>
</LinearLayout>