与Toast讨论一个奇怪的问题 - 我的应用程序中有一些在用户执行某些操作时通知用户,特别是有一个显示问题。它在模拟器上很好,在我的合作开发者的Android手机上很好,但在我的手机上,第二行文字被切断了。吐司显示为单行框,您可以看到第二行文本的顶部被切断。其他人遇到过这个问题?这只是一个普通的错误吗?我一直无法找到谷歌的问题!
msg = getString(R.string.notification_cancel_add);
Toast.makeText(AddEditActivity.this, msg, Toast.LENGTH_SHORT).show();
和R.string.notification_cancel_add = <string name="notification_saved_message">Your Notification has been saved.</string>
答案 0 :(得分:0)
查看android本地化期货,here。也许你必须为你的手机细节(显示器等)编写额外的代码。就像你说的,它适用于其他设备
答案 1 :(得分:0)
当您将String
硬编码到Toast
时,它是否也会切断文字?
答案 2 :(得分:0)
这很奇怪。但我通过传递应用程序上下文解决了它。
msg = getString(R.string.notification_cancel_add);
Toast.makeText("pass aplication class context", msg, Toast.LENGTH_SHORT).show();
它会工作兄弟。
答案 3 :(得分:0)
您必须使用应用程序上下文getContext或MyClass.this 在活动中,使用getApplicationContext()
如开发人员文档所述:
首先,使用makeText()方法之一实例化Toast对象。 此方法采用三个参数:应用程序上下文,文本 消息,以及烤面包的时间。
来源:https://developer.android.com/guide/topics/ui/notifiers/toasts