Intereting Posts
Android Studio R.java Класс IntentService не запускает AsyncTask в главной теме. Вызов метода должен быть вызван из основного потока, в настоящее время выбранный поток является рабочим Как реализовать обработку файлов cookie на Android с помощью OkHttp? Как установить конкретный шрифт для текста кнопки в Android? Каков наилучший способ проверить, видно ли в окне вид? Захват экрана GLSurfaceView для растрового изображения Как получить тело ответа для модификации исключения? Отключить выделение кликов в InfoWindows? Как я могу активировать кнопку «Вверх» моей ActionBar, как кнопка «Назад» телефона? Как скрыть панель действий / панель инструментов при прокрутке вниз в веб-представлении OnActivityResult () не вызывается в новом вложенном фрагменте API ActivityUnitTestCase и startActivity с ActionBarActivity Как узнать, выполнила ли Proguard свою работу Android скачать pdf от url, затем открыть его с помощью PDF-ридера Установите маску макета TextView программно

В Android; Лучше ли использовать OnClickListener или использовать андроид: onClick?

Будет ли производительность работать лучше с помощью onClick? Если я использую onClick, мне не нужно устанавливать android: id (также избегайте нового View.OnClickListener ), улучшает ли производительность вообще? Или это тот же эффект, что и findViewById за кулисами?

Эта страница предоставляет оба метода в качестве опции, но мало рекомендаций по любому бенифиту.

http://developer.android.com/reference/android/widget/Button.html

Вот сообщение в блоге, где они считают onClick «более легким» и «улучшенным» для приложений post 1.6;

http://android-developers.blogspot.com/2009/10/ui-framework-changes-in-android-16.html

Эта новая функция уменьшает как количество Java, так и XML, которые вы должны писать, что дает вам больше времени для сосредоточения внимания на вашем приложении.

Solutions Collecting From Web of "В Android; Лучше ли использовать OnClickListener или использовать андроид: onClick?"

Я считаю, что включение android:onClick было очень плохой идеей.

  1. Вы связываете презентацию с логикой
  2. Если вы не используете плагин, который его поддерживает, вам нужно будет запомнить рефакторинг XML-файла, если вы решите изменить имя метода
  3. Просто неясно связь между кнопкой в ​​вашем xml и методом в вашей активности, которая реагирует на события кликов, если вы явно не видите это в вашем файле Java. С помощью подхода android:onClick вы даже можете забыть, что у вас есть кнопка в вашем макете или метод, обрабатывающий событие onClick .

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

Вместо этого вы можете использовать onTouchListener. Я нашел, что это быстрее, особенно если вы хотите, чтобы действие произошло при нажатии, а не в выпуске.

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

Я использую android:onClick когда мне просто нужно, чтобы моя Button была нажата.

Если мне нужно что-то сделать с Button , например включить / отключить его, я бы использовал setOnClickListener() как сказал mgv.

Также помните, что android:onClick не работает в Android 1.5.