Обсуждение Android теперь вместе (сто семьдесят третьей назад: Обработчик Механизм Андроида II)

Скажи мне, что ты Привет всем, скажем, на извилины является примером Android в механизме Handler, на этот раз мы пошли к этому примеру. Сплетни Хью говорил, слова реформатской поворот. Давайте поговорим Android сейчас

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

  • 1. Создание проекта App, проект содержит только человек по имени MainActivity пустой деятельности;
  • 2. Обработчик класс определяет подкласс SubHandler и метод коррекции handleMessage;
 public class SubHandler extends Handler {
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            switch (msg.what){
                case MSG_START:
                    showMessage(msg.obj.toString());
                    break;
                case MSG_END:
                    showMessage(msg.obj.toString());
                    break;
                default:
                    showMessage(msg.obj.toString());
                    break;
            }
        }
    }
  • 3. Определить тип объекта Handler в функции OnCreate MainActivity из:
 mSubHandler = new SubHandler();
  • 4. Создайте две кнопки в MainActivity, и слушатель предназначен для передачи сообщений;
mBTStartMsg = (Button) findViewById(R.id.id_bt_start_message);
mBTEndMsg = (Button) findViewById(R.id.id_bt_end_message);

mBTStartMsg.setOnClickListener(v ->sendMsg(MSG_START,"Start"));
mBTEndMsg.setOnClickListener(v -> sendMsg(MSG_END,"End"));
  • Определение способа передачи сообщения, отправить сообщение в очередь сообщений с помощью этого метода;
 public void sendMsg(int type,String content) {
    Message msg = new Message();
    msg.what = type;
    msg.obj =content;
   mSubHandler.sendMessage(msg);
}
  • 6.Lopper удаляется из очереди сообщений сообщения и обратного вызова метода Handler handleMessage, Looper Эта операция выполняется автоматически, мы не должны работать;

Мы рассмотрим способ передачи ключа сообщения на шаге 5, параметры методы является типом и содержания сообщения, инкапсулированный в этих двух параметрах процесса как объекты типа сообщения, а затем Handler的sendMessageотправляется в метод очереди сообщений; Кроме того, мы тип сообщения , написанные констант, так и в соответствии с техническими условиями проекта.

Рассмотрим на этапе handleMessage Способ 2 перезаписываемые Мы msg.whatтип определяет сообщение, различные сообщения затем обрабатывается в соответствии с различными типами лечения здесь , является относительно простым: содержание сообщения и путем получения Toast отображается для пользователя; когда мы нажимали start和end按钮, то появится Тост отображения "Start"和"End".контента , здесь отображается и добавьте контент точно так же , как и при отправке нам сообщение.

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

Скажите, о механизме Android Handler в случае мы описали здесь, и есть какие-либо примеры для, услышать Давай следующее разложение!

Опубликовано 528 оригинальные статьи · вона похвала 131 · просмотров 620 000 +

рекомендация

отblog.csdn.net/talk_8/article/details/105164270