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

时间:2015-09-08 09:56:29

标签: android material-design android-snackbar

我正在开发一个Android应用程序。在那我想在对话框中显示材料设计Snackbar。可能吗?如果是,那么如何?

请帮帮我。

感谢。

3 个答案:

答案 0 :(得分:5)

是的,你可以。

要在Snackbar创建自定义Dialog内显示View。您可以在此处详细了解:Dialogs/Creating a Custom Layout

然后展示Snackbar调用Snackbar.make((dialogView, "text", duration)),其中dialogView是您的自定义视图。

答案 1 :(得分:1)

如果您正在使用Dialog,那么:

dialog_share = new Dialog(MainScreen.this, R.style.DialogTheme);
dialog_share.requestWindowFeature(Window.FEATURE_NO_TITLE);
LayoutInflater inflater = this.getLayoutInflater();
mDialogView = inflater.inflate(R.layout.dialog_share, null);
dialog_share.setContentView(mDialogView);
dialog_share.getWindow().setBackgroundDrawableResource(R.color.translucent_black);
dialog_share.show();

public void ShowSnackBarNoInternetOverDialog() {
        Snackbar snackbar = Snackbar.make(mDialogView, getString(R.string.checkinternet), Snackbar.LENGTH_LONG);
        snackbar.setActionTextColor(Color.CYAN);
        snackbar.setAction("OK", new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //Toast.makeText(MainScreen.this, "snackbar OK clicked", Toast.LENGTH_LONG).show();
            }
        });
        snackbar.show();
    }

答案 2 :(得分:0)

在 Snackbar.make() 中使用 > ps aux|grep 1231 [...] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/usr/libexec/mobileassetd

getDialog().getWindow().getDecorView()