Can I display material design Snackbar in dialog?

后端 未结 4 1754
隐瞒了意图╮
隐瞒了意图╮ 2021-01-17 12:24

I am developing an android application. In that I want to display material design Snackbar in dialog. Is it possible? If yes then how?

Please help me.

Thanks

4条回答
  •  天涯浪人
    2021-01-17 12:49

    It's definitely possible, you just have to pass the View of the Dialog to the SnackBar.

    Example

        AlertDialog.Builder mAlertDialogBuilder = new AlertDialog.Builder(this);
        LayoutInflater inflater = this.getLayoutInflater();
        // inflate the custom dialog view
        final View mDialogView = inflater.inflate(R.layout.dialog_layout, null);
        // set the View for the AlertDialog
        mAlertDialogBuilder.setView(mDialogView);
    
        Button btn = (Button) mDialogView.findViewById(R.id.dialog_btn);
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                // Pass the mDialogView to the SnackBar
                Snackbar
                        .make(mDialogView, "SnackBar in Dialog", Snackbar.LENGTH_LONG)
                        .show();
            }
        });
        AlertDialog alertDialog = mAlertDialogBuilder.create();
        alertDialog.show();
    

    Result

    Note: There's no need to use a CoordinatorLayout as the root. In my example I simply used a LinearLayout as the root.

提交回复
热议问题