我正在开发我的第一个Android应用程序,我的情况让我很烦恼。
假设用户必须在少量编辑文本字段中输入一些信息,并且如果至少有一个空字段则无法继续。
如果用户单击按钮继续并且至少有一个空字段,则会显示某个Toast。
问题是,如果用户点击该按钮10次,然后输入丢失的信息并继续,则这些Toast消息会一直显示在新活动中以及Toast成功注册。
有没有办法打断当前显示的Toast并显示最新或类似的内容,以阻止此类行为发生?
编辑:我接受了@ Vucko的回答,因为它更适合我的问题。 @Augusto Carmo写的答案确实有效,但我更喜欢Vucko的答案,它更优雅。
答案 0 :(得分:3)
拥有一个Toast对象,当您想要显示另一个Toast消息时,取消最后一个并显示新的Toast消息。例如:
Toast toast = new Toast();
toast.makeText(CONTEXT_HERE, MESSAGE_HERE, TIME_HERE).show();
// displaying another
toast.cancel();
toast.makeText(CONTEXT_HERE, ANOTHER_MESSAGE_HERE, TIME_HERE).show();
答案 1 :(得分:3)
更优雅和常见的方法是使用:
editText.setError("Your error message");
一旦你在editText中写了一些东西,你就会自动消失,或者你可以通过调用setError(null);
手动删除它。