我无法在android 4.1 mobile中看到toast消息。直到昨天我才能看到吐司的消息。从今天起,我才看不到这条消息。请帮帮我。
Toast.makeText(getApplicationContext(), "hi", Toast.LENGTH_SHORT).show();
我也尝试过自定义Toast消息而不是toast消息。但仍然无法正常工作。
自定义吐司:
LayoutInflater inflater=getLayoutInflater();
View layout = inflater.inflate(R.layout.toast_layout,(ViewGroup) findViewById(R.id.toast_layout_root));
TextView text = (TextView) layout.findViewById(R.id.text);
text.setText("Please fill Name");
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
答案 0 :(得分:48)
在Android 4.1中没有向我显示Toast,因为在我的应用设置中已选中“显示通知”。我刚刚进入设置 - >管理应用程序 - > [我的应用程序]并切换到显示通知和Toasts开始出现。
答案 1 :(得分:8)
更改为此并再次检查。
if(first_name.length() == 0)
{
Toast.makeText(NameOfYourActivity.this, "Please fill Name", Toast.LENGTH_SHORT).show();
Utilities.writeIntoLog("Please fill Name");
}
答案 2 :(得分:7)
只需在此处发布Google代码链接。
自Jelly Bean以来,用户可以通过“应用详情”设置禁用给定应用的通知。
非常糟糕和不必要的副作用是,一旦通知被禁用,即使用户正在运行应用程序,也会禁用Toast消息!
您鼓励在您的设计指南中使用Toast,但如果用户有可能删除它们,谁会想要使用它,特别是如果烘烤的消息是向用户显示的重要反馈......
我至少了解当应用程序处于后台时可以禁用Toasts,但如果它是前台Activity则不会被禁用。
答案 3 :(得分:2)
Toast在所有Android版本中运行良好。您的代码中可能存在几个问题,例如
修改强> 在您的自定义Toast中,不要在布局inflater中设置父级,例如使用如下所示
View layout = inflater.inflate(R.layout.toast_layout,null);
答案 4 :(得分:0)
我遇到了同样的问题。当我在UI线程上调用代码时,问题就解决了我
public void showToastMessage(final String msg) {
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(BaseActivity.this, msg, Toast.LENGTH_LONG).show();
}
});
}