Krupen / FabulousFilter

Android library to animate Floating Action Button to Bottom Sheet Dialog and vice-versa
Apache License 2.0
2.67k stars 324 forks source link

Remove Fab button dependency #17

Open iamdeadman opened 6 years ago

iamdeadman commented 6 years ago

Hi, I am trying to use this inside a fragment and I have tried setting the peek height like this -

dialogFrag = SelectItemsBottomSheetFragment.newInstance();
dialogFrag.setParentFab(filterFab);
filterFab.setVisibility(View.GONE);
dialogFrag.setPeekHeight(600);
dialogFrag.setAnimationDuration(100);
@Override
    public void setupDialog(Dialog dialog, int style) {
        View contentView = View.inflate(getContext(), R.layout.select_board_requirement, null);
        RelativeLayout rl_content = (RelativeLayout) contentView.findViewById(R.id.rl_content);
        LinearLayout ll_buttons = (LinearLayout) contentView.findViewById(R.id.ll_buttons);
        ....
        try {
            setAnimationDuration(100); //optional; default 500ms
            setPeekHeight(600); // optional; default 400dp
            setCallbacks((Callbacks) getActivity()); //optional; to get back result
            setViewgroupStatic(ll_buttons);
            setViewMain(rl_content); //necessary; main bottomsheet view
            setMainContentView(contentView); // necessary; call at end before super
        } catch(Exception ignored){}
        super.setupDialog(dialog, style); //call super at last
}

But, I am not observing any change in the initial height of the opened dialog. Does the peek height has any restrictions w.r.t screen / viewport height.

Also, I wanted to use this with other form elements instead of simple dropdowns, but I don't understand why there is a requirement to setup the fab button to open it. I think with minimal refactoring we can open it from any View class.

----- Update ------

I tried again with peek height as 450 again and found it working so I guess it was a viewport height issue.

But, still I think the fab button dependency can be removed. I am not sure about what purpose does it serve in your library but if it is just to get the animation start position then I can submit a pull request for the same if you want.

iamdeadman commented 6 years ago

so when I was trying to use a hidden fab to open the bottom sheet, because there is a setting to change fab visibility in your onStop method, the fab button is no longer hidden after I dismiss the bottom sheet, is there any way we could listen to when onStop is getting called and hide the fab once again after sheet is dismissed

iamdeadman commented 6 years ago

Hi man, any updates on this please ?