Мне нужно иметь LinearLayout
внутри SrollView
, а у LinearLayout
должен быть запас от ScrollView
. Сначала я мог придумать единственный способ решить эту проблему - иметь LinearLayout
внутри другого LinearLayout
с полями, установленными на этом последнем макете. Они не будут работать, если они будут установлены во внешнем LinearLayout.
Пример:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:fillViewport="true"
android:background="@color/layout_color_green">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/layout_color_yellow">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
android:orientation="vertical"
android:background="@color/layout_color_blue">
</LinearLayout>
</LinearLayout>
</ScrollView>
Мой вопрос: Зачем мне это делать?
Если бы у меня был только один LinearLayout
, не было бы полей ...
* * 1 022 Пример: * 1 023 *
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:fillViewport="true"
android:background="@color/layout_color_green">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
android:orientation="vertical"
android:background="@color/layout_color_blue">
</LinearLayout>
</ScrollView>
Затем, в поисках похожей проблемы, я нашел несколько макетов, которые подсказали мне идею использования отступа в ScrollView
вместо поля в LinearLayout
. Это также решает мою проблему, и мне не нужно LinearLayout
внутри другого. Это более элегантное решение.
Тем не менее, я хотел бы понять, почему простое поле внутри LinearLayout
не работает, когда оно внутри ScrollView
. Потому что он работает нормально, если он не внутри ScrollView
.
Кто-нибудь знает почему?