Обработчик является абстрактным, не может быть создан

Я пытаюсь использовать Handler в своем приложении. Но когда я создаю его так:

 Handler handler = new Handler(); 

Я получаю следующую ошибку.

 Gradle: error: Handler is abstract; cannot be instantiated 

И когда я проверяю решения, он просит меня реализовать эти методы:

 Handler handler = new Handler() { @Override public void close() { } @Override public void flush() { } @Override public void publish(LogRecord record) { } }; 

Я никогда не использовал Handlers раньше, и я использую его только для вызова метода после некоторой задержки. Для этого я использовал:

 handler.postDelayed(new Runnable() { @Override public void run() { //Do something after 100ms } }, 100); 

Но это показывает ошибку:

 Gradle: error: cannot find symbol method postDelayed(<anonymous Runnable>,int) 

Пожалуйста помоги! Заранее спасибо.

Кажется, вы импортировали неправильный класс Handler

 import java.util.logging.Handler; 

Измените его на

 import android.os.Handler; 

На месте

 import java.util.logging.Handler; 

Добавить

 import android.os.Handler; 

Также если вы используете

 Handler handler = new Handler() { @Override public void close() { } @Override public void flush() { } @Override public void publish(LogRecord record) { } }; 

Он даст ошибку, которую boolean нашел somthing like error, поэтому либо используйте boolean handler = new Handler () … или просто используйте (new Handler ()) {…. `

  import android.os.Bundle; import android.os.Handler; import android.support.v7.app.ActionBarActivity; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.TextView; public class ActionActivity extends ActionBarActivity { final String LOG_TAG = "myLogs"; TextView tvInfo; Button btnStart; Handler h; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.action_activity); tvInfo = (TextView)findViewById(R.id.tvinfo); btnStart = (Button)findViewById(R.id.btnstart); h = new Handler() { public void handleMessage(android.os.Message msg) { // update TextView tvInfo.setText("Закачано файлов: " + msg.what); if (msg.what == 10) btnStart.setEnabled(true); }; }; } public void onclick(View v) { switch (v.getId()) { case R.id.btnstart: btnStart.setEnabled(false); Thread t = new Thread(new Runnable() { public void run() { for (int i = 1; i <= 10; i++) { // some process downloadFile(); h.sendEmptyMessage(i); // пишем лог Log.d(LOG_TAG, "i = " + i); } } }); t.start(); break; case R.id.btnTets: Log.d(LOG_TAG, "test"); break; default: break; } } public void downloadFile(){ try{ TimeUnit.SECONDS.sleep(1); } catch (InterruptedException e){ e.printStackTrace(); }; } } 

Import android.os.Handler; Это обработчик, необходимый для вашей пурпурной. Перед импортом класса Handler попробуйте импортировать вышеперечисленное.

Android SDK автоматически импортирует неверный. Вот почему у людей проблемы.

Intereting Posts
Android ndk-build iostream: нет такого файла или каталога Редактировать прослушиватель текстовых клавиш FirebaseJobDispatcher запускается при изменении сети Добавить анимацию при изменении вкладок Libgdx и TWL: сила приложения Android закрывается в любом меню TWL, отлично работает на рабочем столе Android-декодер-> декодирование возвращено false для Bitmap download Ошибка в памяти при перезапуске приложения (Android) Итерация через группу просмотра Как захватить содержимое экрана устройства Android? Каков правильный код языка для Android для упрощенного китайского и португальского языков? Picasso «Изменить размер и центральную область» или ImageView «centerCrop»? Как получить координаты экрана из маркера в google maps v2 android Как реализовать таймер обратного отсчета по горизонтали? Преобразование растрового изображения в GrayScale в Android Log.e не печатает трассировку стека UnknownHostException