Я хочу настроить AlertDialog
, чтобы иметь фиксированный заголовок и нижний колонтитул с прокруткой RecyclerView
.Поэтому я попытался сделать это с RelativeLayout
, но если в RecyclerView
много пунктов, то нижний колонтитул скрывается ниже RecyclerView
.И я добавляю фиксированную высоту к RecyclerView
, тогда, если элементов меньше, тогда между RecyclerView
и нижним колонтитулом появляется дополнительный пробел.
С RelativeLayout:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="schemas.android.com/apk/res-auto"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true"
android:gravity="center"
android:layout_centerVertical="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:id="@+id/main"
android:orientation="vertical">
<TextView
android:text="Add Additional Information"
android:id="@+id/additionalInfoTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="16dp"
android:gravity="center"
android:textColor="@color/white"
android:textStyle="bold"
android:background="@drawable/popupTitle"
android:padding="@dimen/_10sdp"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/additionalDataList"
android:scrollbars="vertical"
android:layout_alignParentTop="true"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:id="@+id/drlBottomMenu"
android:layout_height="wrap_content"
android:background="@color/offWhite"
android:orientation="vertical"
android:layout_below="@+id/main">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Continue"
android:layout_gravity="center"
android:id="@+id/continueButton"
style="@style/buttonStyle"
android:backgroundTint="@color/colorPrimary"
android:layout_weight="0.5"
android:textAllCaps="false"
android:padding="12dp"
android:layout_marginTop="@dimen/_12sdp"
android:layout_marginLeft="@dimen/_20sdp"
android:layout_marginRight="@dimen/_20sdp"
android:textColor="@color/white"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Cancel"
android:padding="12dp"
android:layout_gravity="center"
android:id="@+id/cancelButton"
android:textAllCaps="false"
style="@style/buttonStyle"
android:backgroundTint="@color/gray"
android:layout_weight="0.5"
android:textColor="@color/white"
android:layout_marginBottom="@dimen/_12sdp"
android:layout_marginLeft="@dimen/_20sdp"
android:layout_marginRight="@dimen/_20sdp"
/>
</LinearLayout>
</RelativeLayout>
С LinearLayout:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/roundedCorner">
<TextView
android:text="Add Additional Information"
android:id="@+id/additionalInfoTitle"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textSize="16dp"
android:gravity="center"
android:textColor="@color/white"
android:textStyle="bold"
android:background="@drawable/popupTitle"
android:padding="@dimen/_10sdp"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/additionalDataList"
android:scrollbars="vertical"
android:layout_alignParentTop="true"
android:layout_width="fill_parent"
android:layout_height="match_parent"/>
<Button
android:text="Login"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/continueButton"
style="@style/buttonStyle"
android:backgroundTint="@color/colorPrimary"
android:layout_marginTop="@dimen/_12sdp"
android:layout_marginLeft="@dimen/_20sdp"
android:layout_marginRight="@dimen/_20sdp"
/>
<Button
android:text="Cancel"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/cancelButton"
style="@style/buttonStyle"
android:backgroundTint="@color/gray"
android:layout_marginBottom="@dimen/_12sdp"
android:layout_marginLeft="@dimen/_20sdp"
android:layout_marginRight="@dimen/_20sdp"
/>
</LinearLayout>
Может кто-нибудь, пожалуйста, помогите мне в разработке этого.Желаемый результат должен быть:
РЕДАКТИРОВАТЬ После использования ограничения я получаю следующий результат: