В настоящее время я использую пользовательский диалог нижнего листа, чтобы показать вид, скользящий снизу страницы через определенное время. Предполагается, что он останется на странице, не заблокировав и не «замаскировав» содержимое в обороте. В настоящее время, кажется, блокирует любое взаимодействие с фоном (у меня setcancelable false). Я хочу, чтобы он был таким, чтобы его нельзя было отменить, когда вы одновременно нажимаете на кнопку снаружи, позволяя мне нажимать на кнопки на заднем плане в главном контейнере. Есть ли способ сделать это или лучший подход к этому?
Вот мой код:
BottomSheetDialog dialog = new BottomSheetDialog(MainActivity.this);
dialog.setCancelable(false);
dialog.setContentView(R.layout.banner_message_view);
dialog.show();
и вот мой banner_message_view:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:id="@+id/newbannerLayout"
android:background="@android:color/transparent">
<LinearLayout
android:id="@+id/bannerLayout"
android:layout_width="match_parent"
android:layout_height="68dp"
android:background="@drawable/message_banner_rect_drawable"
android:orientation="horizontal">
<TextView
android:id="@+id/bannerMessageTextView"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginStart="16dp"
android:layout_marginTop="14dp"
android:layout_marginBottom="14dp"
android:layout_weight="1"
android:textColor="@android:color/black"
android:textSize="16sp"
app:autoSizeTextType="uniform"
android:text="@string/refresh_rooms_message" />
<ImageView
android:id="@+id/closeButtonImageView"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="center"
android:layout_margin="10dp"
android:src="@drawable/ic_close" />
</LinearLayout>
</LinearLayout>
Я хочу сделать так, чтобы при показе я мог легко взаимодействовать с контентом в фоновом режиме, не отклоняя его. (что-то вроде удержания на setcancelable false, но в то же время не затенения или потери фокуса фона)
Есть идеи, как это сделать?
Заранее спасибо!