Snackbar vs Toasts 我应该使用哪一个

当我们想要向用户显示关于已经成功(或不成功)发生的一些动作的信息时,通常使用 Toasts,并且该动作不需要用户采取任何其他动作。就像发送消息时一样,例如:

Toast.makeText(this, "Message Sent!", Toast.LENGTH_SHORT).show();

Snackbars 也用于显示信息。但这次,我们可以为用户提供采取行动的机会。例如,假设用户错误地删除了一张图片,他希望将其取回。我们可以为 Snackbar 提供撤消操作。像这样:

Snackbar.make(getCurrentFocus(), "Picture Deleted", Snackbar.LENGTH_SHORT)
        .setAction("Undo", new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //Return his picture
            }
        })
        .show();

结论:当我们不需要用户交互时,使用 Toasts。Snackbars 用于允许用户执行其他操作或撤消之前的操作。