У меня есть очень простая, но трудная проблема, когда у меня есть кнопка, закрепленная в нижней части окна, но под контейнером с рециркуляцией.Как только размер контейнера увеличится, я хочу, чтобы кнопка находилась под обзором переработчика (с возможностью прокрутки), а не фиксировалась в нижней части окна. Есть ли способ добиться этого?
Я искал в Интернете пару идей, но пока не нашел ничего похожего на него.
Я в основном использую
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:clickable="false">
<android.support.design.widget.CoordinatorLayout
android:id="@+id/cl_root_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipChildren="false">
<LinearLayout
android:id="@+id/activity_g"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:elevation="0dp">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
app:subtitleTextColor="@color/white"
app:titleTextAppearance="@style/Toolbar.TitleText"
app:titleTextColor="@color/white">
<TextView
android:id="@+id/nav_back_btn"
style="@style/Body1RegLeftBlack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_marginStart="@dimen/activity_horizontal_margin"
android:gravity="center_horizontal"
android:background="@drawable/ic_backarrow" />
<TextView
android:id="@+id/g_main_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="18dp"
android:layout_marginTop="15dp"
android:letterSpacing="0.01"
android:gravity="center_horizontal"
android:text="@string/g"
android:textAppearance="@style/TextAppearance.Text.Roboto.Medium"
android:textColor="#de000000"
android:textSize="20sp"
android:textStyle="normal"
/>
</android.support.v7.widget.Toolbar>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:id="@+id/info_scrollview"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/infoContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:clickable="false"
android:orientation="vertical">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp">
<TextView
android:id="@+id/info_location"
style="@style/Headline2LeftBlack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/activity_horizontal_margin"
android:textAppearance="@style/TextAppearance.Text.Chronicle"
android:textSize="28sp"
tools:text="@string/five_thirty_fifth_ave" />
<TextView
style="@style/Body1RegRightRed"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/info_location"
android:layout_alignParentEnd="true"
android:layout_marginEnd="@dimen/activity_horizontal_margin"
android:layout_toEndOf="@+id/info_location"
android:text="@string/location_change"
android:textAppearance="@style/TextAppearance.Text.Roboto.Regular"
android:visibility="gone" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="48dp"
android:layout_marginTop="44dp"
android:gravity="center_vertical"
android:weightSum="2">
<TextView
style="@style/Body1RegLeftBlack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_weight="1"
android:id="@+id/g_start_date"
android:textAppearance="@style/TextAppearance.Text.Roboto.Regular"
android:text="@string/g_start_date" />
<TextView
style="@style/Body1RegRightBlack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_weight="1"
android:id="@+id/g_start_time"
android:textAppearance="@style/TextAppearance.Text.Roboto.Regular"
android:text="@string/g_start_time" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/registerUserSeparatorColor" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="48dp"
android:gravity="center_vertical"
android:weightSum="2">
<TextView
style="@style/Body1RegLeftBlack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_weight="1"
android:id="@+id/g_end_date"
android:textAppearance="@style/TextAppearance.Text.Roboto.Regular"
android:visibility="invisible"
android:text="@string/g_end_date" />
<TextView
style="@style/Body1RegRightBlack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_weight="1"
android:id="@+id/g_end_time"
android:textAppearance="@style/TextAppearance.Text.Roboto.Regular"
android:text="@string/g_end_time" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/registerUserSeparatorColor" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="28dp"
android:letterSpacing="0.01"
android:lineSpacingExtra="4sp"
android:paddingTop="30dp"
android:textAppearance="@style/TextAppearance.Text.Roboto.Medium"
android:textColor="@color/black"
android:textSize="20sp"
android:textStyle="normal"
android:text="@string/g" />
<android.support.v7.widget.RecyclerView
android:id="@+id/g_item_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:overScrollMode="never"
android:divider="@null"
tools:listitem="@layout/item_g"/>
<TextView
style="@style/Body1RegLeftRed"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16sp"
android:layout_marginTop="20dp"
android:id="@+id/add_g"
android:lineHeight="22sp"
android:text="@string/add_g"
android:textSize="16sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="58dp"
android:letterSpacing="0.01"
android:lineSpacingExtra="4sp"
android:visibility="invisible"
android:textAppearance="@style/TextAppearance.Text.Roboto.Medium"
android:textColor="@color/black"
android:textSize="20sp"
android:textStyle="normal"
android:text="@string/arrival_notifications" />
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
android:id="@+id/text_message_container"
android:layout_marginStart="16dp">
<TextView
android:id="@+id/text_message"
style="@style/Body1RegLeftBlack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="11dp"
android:textAppearance="@style/TextAppearance.Text.Roboto.Regular"
android:text="@string/text_message" />
<TextView
style="@style/Body2RegLeftGrey"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/text_message"
android:layout_marginTop="2dp"
android:id="@+id/tap_phone_number_text"
android:textAppearance="@style/TextAppearance.Text.Roboto.Regular"
android:text="@string/tap_to_add_a_phone_number" />
<android.support.v7.widget.SwitchCompat
android:id="@+id/text_message_switch"
style="@style/Color1SwitchStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="16dp" />
</RelativeLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginStart="16dp"
android:visibility="gone"
android:layout_marginTop="11dp"
android:background="@color/settingsSeparatorLineColor" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
android:layout_marginTop="100dp"
android:textAppearance="@style/TextAppearance.Text.Roboto.Medium"
android:textStyle="normal"
android:letterSpacing="0.07"
android:lineSpacingExtra="0sp"
android:layout_gravity="center"
android:layout_marginBottom="30dp"
android:id="@+id/submit_btn"
android:text="@string/submit_list"
/>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
</LinearLayout>
</android.support.design.widget.CoordinatorLayout>
</android.support.design.widget.CoordinatorLayout>
Проблема выше в том, чтоbtn submit_list не остается фиксированным, если представление реселлера увеличивается, но в представлении все еще достаточно места, чтобы сэкономить.
Я хочу сделать так, чтобы кнопка оставалась фиксированной и не прокручивалась, пока размер рециркулятора не выходит за пределыопределенный предел снизу (больше не виден на экране), после которого кнопка прокручивается относительно последнего элемента в окне повторного просмотра и больше не выравнивается по дну.есть идеи, как это сделать?
Чтобы привести наглядные примеры:
Как видите, на начальном экране кнопка отправки выровнена по низу, аостальное содержимое на месте.По мере того, как я добавляю больше пользователей:
Он все еще остается внизу, так как элементы зрения переработчика все еще находятся на экране, как только я добавлю еще один элемент, в результате чего списокпрокрутите вверх:
Как видно, я хочу, чтобы он шел под обзором переработчика, а не оставался фиксированным в нижней части экрана (приведенные выше снимки экрана с ios, где он работает), былинтересно, можем ли мы сделать то же самое для Android?