如何在底部对话框对话框中将稀松布更改为不可见?

Muthukumaaran Chandramohan

我已经使用bottomsheetdialogfragment实现了bottomsheet。但默认情况下,它具有调光效果(Scrim)。如何将调光效果(稀松布)删除或更改为不可见,以便可以清楚地看到其他UI元素。

这是我使用的布局。

fragment_bottom_sheet_queue.xml

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/res_bottom_sheet_shape"
    android:orientation="vertical">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="6dp">

        <ImageView
            android:id="@+id/close"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_marginStart="10dp"
            android:layout_marginTop="8dp"
            android:background="?selectableItemBackgroundBorderless"
            android:contentDescription="@string/image_description"
            android:padding="10dp"
            android:src="@drawable/ic_close" />

        <TextView
            android:id="@+id/txt_queue"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_gravity="center"
            android:layout_marginStart="8dp"
            android:layout_marginEnd="8dp"
            android:fontFamily="@font/quicksand_medium"
            android:gravity="center"
            android:text="@string/queue"
            android:textColor="@color/dark_white"
            android:textSize="18sp" />

        <ImageView
            android:id="@+id/option"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentEnd="true"
            android:layout_gravity="center_vertical"
            android:layout_marginTop="8dp"
            android:layout_marginEnd="8dp"
            android:background="?selectableItemBackgroundBorderless"
            android:contentDescription="@string/image_description"
            android:padding="10dp"
            android:src="@drawable/ic_menu" />
        <ImageView
            android:id="@+id/tickoption"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentEnd="true"
            android:layout_gravity="center_vertical"
            android:layout_marginTop="8dp"
            android:layout_marginEnd="8dp"
            android:visibility="gone"
            android:background="?selectableItemBackgroundBorderless"
            android:contentDescription="@string/image_description"
            android:padding="10dp"
            android:src="@drawable/ic_done_grey_24dp" />
    </RelativeLayout>

    <View
        android:id="@+id/view"
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:layout_marginTop="6dp"
        android:background="@color/light_grey" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/queue_empty_text"
        android:layout_marginStart="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:visibility="gone"
        android:gravity="center"
        android:textSize="16sp"
        android:fontFamily="@font/quicksand_medium"
        android:text="@string/queue_empty_text"/>

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/optionRecyclerView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginEnd="16dp"
        android:background="@color/screen_background"
        app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
        app:layout_behavior="android.support.design.widget.BottomSheetBehavior" />
</LinearLayout>

BottomSheetFragment.java

public class BottomSheetFragment extends BottomSheetDialogFragment {

private BottomSheetBehavior mBehavior;

    @NonNull
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        BottomSheetDialog dialog = (BottomSheetDialog) super.onCreateDialog(savedInstanceState);

        View view = View.inflate(getContext(), R.layout.fragment_bottom_queue_sheet, null);
        activity = getActivity();

        dialog.setContentView(view);
        mBehavior = BottomSheetBehavior.from((View) view.getParent());
        return dialog;
    }

具有暗淡效果(SCRIM)

调用底部工作表时,后面的其他UI元素将变暗

不调用底纸时

在此处输入图片说明

树干

您可以更改Window标志和暗淡的数量来实现此效果。

@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
    BottomSheetDialog dialog = super.onCreateDialog(savedInstanceState);

    Window window = dialog.getWindow();
    window.setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL,
            WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);
    window.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
    return dialog;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使对话框显示不可见元素的android

来自分类Dev

Android警报对话框文本不可见

来自分类Dev

Android使进度对话框ProgressBar不可见

来自分类Dev

在jQuery对话框中不可见ColdFusion页面

来自分类Dev

聚合物纸对话框不可见

来自分类Dev

表单对话框中的“ zenity”列表不可见

来自分类Dev

Android警报对话框文本不可见

来自分类Dev

如何在jQuery对话框中将按钮更改为图片

来自分类Dev

如何使Internet Explorer ActiveX对话框可见

来自分类Dev

模态对话框窗口中的不可见Fusion Chart不导出

来自分类Dev

当框架不可见时,Java不设置对话框

来自分类Dev

Ember.js模态对话框不可见地呈现

来自分类Dev

如果所有者最小化,则Javafx对话框(警报)不可见

来自分类Dev

当对话框不可见时,JScrollBar setValue不起作用

来自分类Dev

从自己的对话框派生时,页脚按钮不可见

来自分类Dev

JQuery 对话框标题栏和关闭按钮不可见

来自分类Dev

ProgressSpinner 在进度对话框/进度条中不可见

来自分类Dev

自定义无模式对话框类不可见

来自分类Dev

Android M检测权限对话框是否可见

来自分类Dev

jQuery对话框默认可见

来自分类Dev

DialogFragment〜部分可见的对话框按钮

来自分类Dev

检查对话框是否可见 - Espresso

来自分类Dev

Roboletric 无法使自定义对话框可见

来自分类Dev

如何更改JFileChooser对话框的标题

来自分类Dev

如何更改警报对话框的图标?

来自分类Dev

如何更改JQuery对话框的位置

来自分类Dev

如何在Windows中更改OPENFILENAME对话框的位置?

来自分类Dev

如何在 Angular 的对话框中显示输入更改?

来自分类Dev

打开对话框后更改WPF边框可见性

Related 相关文章

热门标签

归档