8

背景怎么能像这里显示的那样变暗?

CoordinatorLayout我已经使用和正常设置了它BottomSheetBehavior

4

3 回答 3

6

这将仅显示底部工作表。

public class MyBottomSheet extends BottomSheetDialogFragment {
    private static final String TAG = "MyBottomSheet";

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

        final View view = View.inflate(getContext(), R.layout.my_custom_view, null);

        dialog.setContentView(view);
        behavior = BottomSheetBehavior.from((View) view.getParent());

        return dialog;
    }

    public void show(final FragmentActivity fragmentActivity) {
        show(fragmentActivity.getSupportFragmentManager(), TAG);
    }
}

像正常调用一样简单地关闭对话框close()

于 2016-06-20T13:19:04.487 回答
1
    bottomSheetBehavior.addBottomSheetCallback(new BottomSheetBehavior.BottomSheetCallback() {
                @Override
                public void onStateChanged(@NonNull View bottomSheet, int newState) {}

                @Override
                public void onSlide(@NonNull View bottomSheet, float slideOffset) {

                            (your_layout/view).setAlpha(1 - slideOffset);

                }
            });
于 2020-03-15T16:07:15.347 回答
0

利用BottomSheetDialog

基本上它是一个对话框(即支持暗淡)并支持模态底部工作表行为试一试

于 2016-06-20T12:11:38.890 回答