Как сделать тост из неактивного класса? - PullRequest
8 голосов
/ 05 апреля 2011

У меня есть класс, который я использую для получения данных GPS в моей деятельности. В конструкторе я передаю ему контекст действия:

gpsFetcher = new GPSFetcher(this);

и в классе gpsFetcher у меня есть:

this.context = c.getApplicationContext();

ИЛИ просто

this.context = c;

и затем я вызываю тост с:

Toast.makeText(context, "sometext", Toast.LENGTH_LONG);

Но это никогда не появляется ... Есть что-то, что я пропускаю? Возможно ли это?

Спасибо!

Ответы [ 3 ]

11 голосов
/ 05 апреля 2011

Вы забыли Toast#show?

Toast toast = Toast.makeText(context, "sometext", Toast.LENGTH_LONG);
toast.show();
1 голос
/ 06 октября 2016

Вы также должны позвонить show():

Toast.makeText(context, "sometext", Toast.LENGTH_LONG).show();

0 голосов
/ 16 апреля 2015

Я встречал тот же вопрос, но решил его. !!В неактивном классе вы просто объявляете «открытую статическую строку».Затем в вашей MainActivity или другой деятельности вы можете напрямую использовать Toast.

В моем случае я объявляю неактивный класс NoteDB.поэтому я объявляю public static String S в классе.(Вы можете изменить значение S в классе. Затем в моей MainActivity я объявляю

Toast(MainActivity.this, NoteDB.S ,TOAST.SHORT_LENTGH).show();

. Это хорошо работает.

...