Handler Класс

Определение

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

[Android.Runtime.Register("android/os/Handler", DoNotGenerateAcw=true)]
public class Handler : Java.Lang.Object
[<Android.Runtime.Register("android/os/Handler", DoNotGenerateAcw=true)>]
type Handler = class
    inherit Object
Наследование
Handler
Производный
Атрибуты

Комментарии

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue. Каждый экземпляр обработчика связан с одним потоком и очередью сообщений этого потока. При создании обработчика он привязывается к Looper. Он будет доставлять сообщения и запускаемые компоненты в очередь сообщений Этого Looper и выполнять их в потоке этого Looper.

Обработчик используется в двух main: (1) для планирования выполнения сообщений и запуска на определенный момент в будущем и (2) для постановки в очередь действия, выполняемого в потоке, отличном от вашего.

Планирование сообщений выполняется с помощью #postметодов , #postAtTime(Runnable, long), #postDelayed, #sendEmptyMessage, #sendMessage, и #sendMessageAtTime#sendMessageDelayed . Версии <em>post</em> позволяют помещать в очередь запускаемые объекты, вызываемые очередью сообщений при их получении; <версии em>sendMessage</em> позволяют помещать в очередь Message объект, содержащий пакет данных, которые будут обрабатываться методом Обработчика #handleMessage (для реализации подкласса Handler).

При публикации или отправке обработчику можно разрешить обработку элемента, как только очередь сообщений будет готова к этому, или указать задержку перед обработкой или абсолютное время для его обработки. Последние два позволяют реализовать время ожидания, такты и другое поведение на основе времени.

При создании процесса для приложения его main поток выделяется для запуска очереди сообщений, которая отвечает за управление объектами приложения верхнего уровня (действиями, широковещательными приемниками и т. д.) и любыми создаваемыми ими окнами. Вы можете создавать собственные потоки и взаимодействовать с потоком приложения main через обработчик. Для этого вызывается тот же <метод em>post</em> или <em>sendMessage</em> , что и раньше, но из нового потока. Затем заданный параметр Runnable или Message будет запланирован в очереди сообщений обработчика и обработан при необходимости.

Документация по Java для android.os.Handler.

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.

Конструкторы

Handler()

Конструктор по умолчанию связывает этот обработчик с Looper для текущего потока.

Handler(Action<Message>)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

Handler(Handler+ICallback)

Конструктор связывает этот обработчик с Looper для текущего потока и принимает интерфейс обратного вызова, в котором можно обрабатывать сообщения.

Handler(IntPtr, JniHandleOwnership)

Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения.

Handler(Looper)

Используйте предоставленный Looper вместо по умолчанию.

Handler(Looper, Handler+ICallback)

Используйте предоставленный Looper вместо по умолчанию интерфейс обратного вызова, в котором будут обрабатываться сообщения.

Свойства

Class

Возвращает класс среды выполнения данного объекта Object.

(Унаследовано от Object)
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
JniPeerMembers

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

Looper
PeerReference

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
ThresholdClass

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

ThresholdType

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

Методы

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
CreateAsync(Looper)

Создайте обработчик, опубликованные сообщения и исполняемые файлы которого не подвержены барьерам синхронизации, таким как видеосинхронная синхронизация.

CreateAsync(Looper, Handler+ICallback)

Создайте обработчик, опубликованные сообщения и исполняемые файлы которого не подвержены барьерам синхронизации, таким как видеосинхронная синхронизация.

DispatchMessage(Message)

Обработка системных сообщений здесь.

Dispose()

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
Dispose(Boolean)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
Dump(IPrinter, String)
DumpAsync(IPrinter, String)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

Equals(Object)

Указывает, равен ли какой-то другой объект этому объекту.

(Унаследовано от Object)
GetHashCode()

Возвращает значение хэш-кода для объекта.

(Унаследовано от Object)
GetMessageName(Message)

Возвращает строку, представляющую имя указанного сообщения.

HandleMessage(Message)

Подклассы должны реализовать это для получения сообщений.

HasCallbacks(IRunnable)

Проверьте, есть ли в очереди сообщений ожидающие записи с обратным вызовом r.

HasMessages(Int32)

Проверьте, есть ли какие-либо ожидающие записи сообщений с кодом what в очереди сообщений.

HasMessages(Int32, Object)

Проверьте, есть ли в очереди сообщений ожидающие публикации сообщений с кодом what и obj которых имеет значение object.

JavaFinalize()

Вызывается сборщиком мусора для объекта , когда сборка мусора определяет, что больше нет ссылок на объект .

(Унаследовано от Object)
Notify()

Пробуждает один поток, ожидающий монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Пробуждает все потоки, ожидающие на мониторе этого объекта.

(Унаследовано от Object)
ObtainMessage()

Возвращает новый android.os.Message Message объект из глобального пула сообщений.

ObtainMessage(Int32)

То же, что и #obtainMessage(), за исключением того, что он также задает член возвращаемого сообщения.

ObtainMessage(Int32, Int32, Int32)

То же, что и #obtainMessage(), за исключением того, что он также задает элементы what, arg1 и arg2 возвращаемого сообщения.

ObtainMessage(Int32, Int32, Int32, Object)

#obtainMessage()Аналогично , за исключением того, что он также задает значения what, obj, arg1 и arg2 для возвращаемого сообщения.

ObtainMessage(Int32, Object)

То же самое, что и #obtainMessage(), за исключением того, что он также задает элементы what и obj возвращаемого сообщения.

Post(Action)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

Post(IRunnable)

Вызывает добавление runnable r в очередь сообщений.

PostAtFrontOfQueue(Action)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

PostAtFrontOfQueue(IRunnable)

Отправляет сообщение в объект, реализующий Runnable.

PostAtTime(Action, Int64)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

PostAtTime(Action, Object, Int64)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

PostAtTime(IRunnable, Int64)

Вызывает добавление runnable r в очередь сообщений для выполнения в определенное время, заданное <var>uptimeMillis</var>.

PostAtTime(IRunnable, Object, Int64)

Вызывает добавление runnable r в очередь сообщений для выполнения в определенное время, заданное <var>uptimeMillis</var>.

PostDelayed(Action, Int64)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

PostDelayed(IRunnable, Int64)

Вызывает добавление runnable r в очередь сообщений по истечении указанного времени.

PostDelayed(IRunnable, Object, Int64)

Вызывает добавление runnable r в очередь сообщений по истечении указанного времени.

RemoveCallbacks(Action)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

RemoveCallbacks(Action, Object)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

RemoveCallbacks(IRunnable)

Удалите все ожидающие записи runnable r, которые находятся в очереди сообщений.

RemoveCallbacks(IRunnable, Object)

Удалите все ожидающие записи runnable <var>r</var> с object <var>token</var> , которые находятся в очереди сообщений.

RemoveCallbacksAndMessages(Object)

Удалите все ожидающие записи обратных вызовов и отправленных сообщений, для которых <var obj</var> имеет значение <var>token</var>>.

RemoveMessages(Int32)

Удалите все ожидающие записи сообщений с кодом what, которые находятся в очереди сообщений.

RemoveMessages(Int32, Object)

Удалите все ожидающие записи сообщений с кодом what и obj которых — object, которые находятся в очереди сообщений.

SendEmptyMessage(Int32)

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

SendEmptyMessageAtTime(Int32, Int64)

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

SendEmptyMessageDelayed(Int32, Int64)

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

SendMessage(Message)

Отправляет сообщение в конец очереди сообщений после всех ожидающих сообщений до текущего времени.

SendMessageAtFrontOfQueue(Message)

Постановка сообщения в очередь сообщений для обработки при следующей итерации цикла сообщений.

SendMessageAtTime(Message, Int64)

Постановка сообщения в очередь сообщений после всех ожидающих сообщений до абсолютного времени (в миллисекундах) <var>uptimeMillis</var>.

SendMessageDelayed(Message, Int64)

Постановка сообщения в очередь сообщений после всех ожидающих сообщений до (текущее время + delayMillis).

SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
ToArray<T>()

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
UnregisterFromRuntime()

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
Wait()

Вызывает ожидание текущего потока, пока он не пробудится, как правило, из-за <уведомления><<> или>прерывания или прерывания.><

(Унаследовано от Object)
Wait(Int64)

Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени.

(Унаследовано от Object)
Wait(Int64, Int32)

Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени.

(Унаследовано от Object)

Явные реализации интерфейса

IJavaPeerable.Disposed()

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
IJavaPeerable.DisposeUnlessReferenced()

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
IJavaPeerable.Finalized()

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
IJavaPeerable.JniManagedPeerState

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

(Унаследовано от Object)

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверенного средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

GetJniTypeName(IJavaPeerable)

Обработчик позволяет отправлять и обрабатывать Message и запускаемые объекты, связанные с потоком MessageQueue.

Применяется к