其他分享
首页 > 其他分享> > android-我可以在对话框中显示材质设计Snackbar吗?

android-我可以在对话框中显示材质设计Snackbar吗?

作者:互联网

我正在开发一个android应用程序.在那我想在对话框中显示材质设计Snackbar.可能吗?如果是,那怎么办?

请帮我.

谢谢.

解决方法:

绝对有可能,您只需要将对话框的视图传递给SnackBar.

    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();

结果

picture showing result

注意:
无需使用CoordinatorLayout作为根.在我的示例中,我只是使用LinearLayout作为根.

标签:android,material-design,android-snackbar
来源: https://codeday.me/bug/20191010/1887320.html