В чем разница между применением «OnClickListener» и добавлением функции в связанный XML-файл, чтобы добавить действие для кнопки? Какой способ более полезен в каких условиях?
Различные способы добавления действия к кнопке
Ответы (2)
Отличная статья о нажатии кнопки здесь: http://martin.cubeactive.com/android-onclicklitener-tutorial/ Его основная идея заключается в том, что у вас есть два варианта:
подписаться программно
1.1. Встроенная реализация OnClickListener с анонимным классом.
1.2 Путем реализации OnClickListener в вашем классе (обычно в вашей Activity).
установить атрибут кнопки onClick в xml с именем метода обработчика.
Можно спорить о том, что полезнее, но лучше использовать атрибут xml onClick, если у вас много кнопок и для каждой нужен свой обработчик.
Другой хороший подход - назначить всем кнопкам использование одного и того же обработчика при нажатии, а затем - в методе обработчика - сделать переключение в соответствии с тем, какая кнопка была нажата (параметр представления является ссылкой на нажатую кнопку).
Когда вы добавляете прослушиватель из xml, у вас могут быть разные действия для разных условий (язык, размеры и т. д.) без написания условных операторов в исходном коде ypur.