У меня есть слайдер, который можно подтянуть, а затем он показывает карту. Я могу перемещать ползунок вверх и вниз, чтобы скрыть или показать карту. Когда карта находится впереди, я могу обрабатывать сенсорные события на этой карте. Каждый раз, когда я касаюсь, AsyncTask
запускается, он загружает некоторые данные и создает, Toast
который отображает данные. Хотя я запускаю задание по событию касания, тост не отображается, пока я не закрою ползунок. Когда ползунок закрыт и карта больше не отображается, Toast
появляется значок.
Любые идеи?
Хорошо начните задание
РЕДАКТИРОВАТЬ:
public boolean onTouchEvent(MotionEvent event, MapView mapView){
if (event.getAction() == 1) {
new TestTask(this).execute();
return true;
}else{
return false;
}
}
и в onPostExecute
тосте
Toast.makeText(app.getBaseContext(),(String)data.result,
Toast.LENGTH_SHORT).show();
В новостях TestTask(this)
это ссылка на MapOverlay
а не на MapActivity
, так что в этом и была проблема.
Toast
, проверьте ее: stackoverflow.com/a/18280318/1891118Ответы:
Чтобы отобразить Toast в вашем приложении, попробуйте это:
Другой пример:
Мы можем определить две константы для продолжительности:
Настройка вашего тоста
источник
Расширение деятельности с
baseadapter
использованием этогоили если вы используете активность или
mainactivity
источник
Синтаксис
Значение параметра
контекст
текст
продолжительность
Example.1
Example.2
источник
Чтобы тост в Android
или
(LENGTH_SHORT и LENGTH_LONG действуют как логические флаги - это означает, что вы не можете отправить таймер тоста за миллисекунды, но вам нужно использовать любой из этих двух вариантов)
источник
Вы можете настроить свой тост:
Или общий способ:
источник
Я попробовал несколько тостов, и для тех, кто их тост дает им ошибку, попробуйте
источник
Есть два способа сделать это.
Либо используйте встроенное сообщение Toast
или сделать пользовательский, предоставив пользовательский файл макета
источник
Я наткнулся на ответы здесь, и меня привлек тот факт, что, кажется, кто-то возится, полагая, что контекст действия необходим. Это не вариант. Тем не менее, это требование, чтобы Toast был опубликован из основного события или потока пользовательского интерфейса. Таким образом, заставить это работать вне контекста деятельности немного сложно. Вот пример, который будет работать внутри системной службы или любого потенциального класса, который в конечном итоге наследуется от
Context
.Обратите внимание, что нам не нужен доступ к экземпляру,
Activity
чтобы это работало. Пожалуйста, прекратите предполагать, что это так! Если быActivity
требовалось, сигнатура метода не вызывала быContext
.источник
вместо использования "app.getBaseContext ()".
Вы можете попробовать использовать " getApplicationContext () " или " getContext () ".
Если ваш код активен, вы должны использовать «this» из «Activty.this».
Если ваш код находится во фрагменте, вы должны перейти к «getActivity ()»
источник
Если это фрагмент,
источник
Для отображения тостов используйте следующий код:
Toast toast = new Toast(getApplicationContext());
источник
источник
Простой способ
toast("Your Message")
ИЛИ
toast(R.string.some_message)
Просто добавьте два метода в свой
BaseActivity
. Или создайте новый,BaseActivity
если вы еще не используете.и расширить все ваши действия по
BaseActivity
.источник
Самый простой способ! (Для отображения в вашем основном задании замените Первый аргумент на другое задание)
источник
Это сработало для меня:
источник
Необходимо прочитать: пример Android Toast
Синтаксис
Вы можете использовать getApplicationContext () или getActivity () или MainActivity.this (если имя действия - MainActivity)
или
источник
Путь к началу работы
источник
Показать тост из сервиса
Вы также можете поместить
showToast
метод в свой класс Application и показывать тосты из любого места.источник
Если вы хотите написать простой тост в своей деятельности:
Toast.makeText(getApplicationContext(),"Hello",Toast.LENGTH_SHORT).show();
1. Отображение TextView в тосте: ---
TextView tv = new TextView(this);
tv.setText("Hello!");
tv.setTextSize(30);
tv.setTextColor(Color.RED);
tv.setBackgroundColor(Color.YELLOW);
2. Показ изображения как тост: -
ImageView iv = new ImageView(this);
iv.setImageResource(R.drawable.blonde);
Toast t = new Toast(this);
t.setView(iv);
t.setDuration(Toast.LENGTH_LONG);
t.show();
3. Показ макета как тост: -
LayoutInflater li = getLayoutInflater();
View view = li.inflate(R.layout.my_toast_layout,null,false);
Toast t = new Toast(this);
t.setView(view);
t.setDuration(Toast.LENGTH_LONG);
t.show();
** Если вы хотите написать тост в Async, то:
private Activity activity;
private android.content.Context context;
this.activity = activity;
this.context = context;
Toast.makeText(context, "Hello", Toast.LENGTH_SHORT).show();
источник
Вот еще один:
Где
Toast
находитсяToast.makeText(getBaseContext(),getText(R.string.refresh_btn_pushed),Toast.LENGTH_LONG).show();
&
strings.xml
:<string name="refresh_btn_pushed">"Refresh was Clicked..."</string>
источник
Внутренние фрагменты (onCreateView)
Toast.makeText(getActivity(), "your message" , Toast.LENGTH_LONG).show();
Внутренние классы (onCreate)
Toast.makeText(myClassName.this, "your message" , Toast.LENGTH_LONG).show();
источник