rubensousa/BottomSheetBuilder

BottomSheetDialog usage in Fragment

Open

#16 opened on 2017年6月9日

GitHub で見る
 (3 comments) (1 reaction) (0 assignees)Java (558 stars) (105 forks)batch import
help wanted

説明

Hi, Thanks for your library.

I am trying to show BottomSheet in a fragment but a problem occurs on onBottomSheetItemClick listener. Problem steps are;

1- User clicks edit button and BottomSheet opens 2- User clicks an item and BottomSheet dismisses 3- User clicks edit button again and BottomSheet opens 4- User clicks an item but BottomSheet doesn't close and onBottomSheetItemClick is not called.

I changed your sample code using a fragment and same problem occurs. BottomSheet dialog dismisses when user clicks outside of the dialog. In my fragment, there is no coordinatorlayout.


mShowingSimpleDialog = true;
        mBottomSheetDialog = new BottomSheetBuilder(getActivity())
                .setMode(BottomSheetBuilder.MODE_LIST)
                .addTitleItem("Custom title")
                .addItem(0, "Preview", R.drawable.ic_close_24dp)
                .addItem(1, "Share", R.drawable.ic_close_24dp)
                .addDividerItem()
                .addItem(2, "Get link", R.drawable.ic_close_24dp)
                .addItem(3, "Make a copy", R.drawable.ic_close_24dp)
                .expandOnStart(true)
                .setItemClickListener(new BottomSheetItemClickListener() {
                    @Override
                    public void onBottomSheetItemClick(MenuItem item) {
                        Log.d("Item click", item.getTitle() + "");
                        mShowingSimpleDialog = false;
                    }
                })
                .createDialog();
        mBottomSheetDialog.setOnCancelListener(new DialogInterface.OnCancelListener() {
            @Override
            public void onCancel(DialogInterface dialog) {
                mShowingSimpleDialog = false;
            }
        });

コントリビューターガイド