我希望在一个位置显示一个Toast消息,并在另一个位置同时显示另一个Toast消息。
多个Toast消息似乎总是按顺序排队和显示。是否可以同时显示这两条消息?
是否有一种解决方法至少可以提供外观并且不涉及搞乱活动布局?
编辑:似乎第一个问题的答案是否定的,但这是不可能的。解决方法怎么样?对我来说,一个解决方案包括出现的东西" over"该应用程序像Toast一样,不会干扰用户与应用程序的交互(因此,不是AlertDialogue或任何调用onPause()等的东西。)
答案 0 :(得分:5)
正如S͢ky D͢ream所说,无法做到。但 IS 解决方法!您可以创建可包含任何Toast
的自定义View
。这意味着您可以在一个Toast内的不同位置上使用两个消息进行布局。
您可以找到如何执行此操作here,或者您可以直接使用此代码段开始:
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.custom_toast,
(ViewGroup) findViewById(R.id.toast_layout_root));
TextView text = (TextView) layout.findViewById(R.id.text);
text.setText("This is a custom toast");
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
答案 1 :(得分:3)
您无法同时显示2 Toast
。我很确定,我已经尝试了,但我只能展示一个Toast。
但是如果你想真正同时展示两个祝酒词,那么你将把线程机制设置为在同一个地方一个接一个地显示。