Какой подход лучше для пользовательского просмотра: создание нового обработчика или использование существующего? - PullRequest
0 голосов
/ 04 июля 2019

В последнее время я писал пользовательское View в своем приложении для Android, расширяя класс View.Мне нужна была зацикленная анимация, и я использовал new Handler().postDelayed(...), чтобы установить задержку между циклами.Один из моих коллег сказал мне, что мне не нужно создавать новый экземпляр Handler, так как View уже имеет его, мне просто нужно позвонить postDelayed(...).Такой подход кажется законным, однако я заподозрил, является ли это хорошей практикой, возможно, что-то может сломаться?

Мне бы хотелось услышать разницу между этими подходами, почему View интегрировал этот метод postDelayed() и ЭТО ДЕЙСТВИТЕЛЬНО ТО ЖЕ ВСЕ использовать этот метод вместо создания новогоHandler экземпляр и вызов postDelayed() на нем?

1 Ответ

2 голосов
/ 04 июля 2019

Обработчик предоставляется AttachInfo Object. Это последний класс в представлении. Содержит много информации о представлении.

    /**
     * A Handler supplied by a view's {@link android.view.ViewRootImpl}. This
     * handler can be used to pump events in the UI events queue.
     */
    final Handler mHandler;

Вы можете проверить документацию View class

И да, вы можете использовать его, а не создавать свой собственный.

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