Android - тост текст обрезается - PullRequest
1 голос
/ 13 октября 2011

Я столкнулся со странной проблемой с Toast - в моем приложении есть несколько уведомлений пользователя, когда они выполняют определенные действия, и одно из них имеет проблему с отображением. Это нормально на эмуляторе, и это хорошо на Android-телефоне моего со-разработчика, но на моем телефоне вторая строка текста обрезается. Тост отображается в виде одной строки, и вы можете видеть верхнюю часть второй строки текста, которая обрезается. Кто-нибудь еще сталкивался с этой проблемой? Это просто общая ошибка? Мне не удалось найти проблему с Google!

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>

Ответы [ 4 ]

0 голосов
/ 10 сентября 2018

Вы должны использовать контекст приложения, getContext или MyClass.this. В Activity используйте getApplicationContext ()

Как сказано в документации для разработчиков:

Сначала создайте экземплярToast объект с одним из методов makeText ().Этот метод принимает три параметра: контекст приложения, текстовое сообщение и продолжительность тоста.

Источник: https://developer.android.com/guide/topics/ui/notifiers/toasts

0 голосов
/ 13 октября 2011

Это также обрезает текст, когда вы жестко кодируете String в Toast?

0 голосов
/ 18 июня 2018

Это очень странно.Но я решил это, передав контекст приложения.

msg = getString(R.string.notification_cancel_add);    
Toast.makeText("pass aplication class context", msg, Toast.LENGTH_SHORT).show();

Это сработает, брат.

0 голосов
/ 13 октября 2011

Проверьте фьючерсы на локализацию Android, здесь . Возможно, вам придется дополнительно кодировать данные телефона (дисплей и т. Д.). Как вы сказали, он отлично работает с другими устройствами

...