Насколько я понимаю, обратный вызов - это код, который вы предоставляете в одном процессе и который выполняется, когда другой процесс достигает определенного результата
Не совсем.
Википедия описывает обратный вызов как «ссылку на исполняемый код или фрагмент исполняемого кода, который передается в качестве аргумента другому коду». Это, вероятно, лучшее использование этого термина. В этом случае, поскольку операции Java выполняются в форме методов, «метод обратного вызова» - это метод, который будет вызываться в результате обратного вызова.
Является ли это обратным вызовом, потому что он вызывается только тогда, когда пользователь что-то делает (в этом случае щелкните элемент списка)?
Не совсем.
Это метод обратного вызова, поскольку другие компоненты платформы Android обнаруживают событие (в данном случае пользователь нажимает на элемент в списке) и вызывают метод обратного вызова onListItemClick()
, чтобы предоставить вам контроль.
Но если это так, не может ли событие считаться обратным вызовом в том смысле, что оно вызывается только тогда, когда происходит что-то вне его?
Обычно «обратный вызов» зарезервирован для случаев, когда существует четко определенная непрозрачная граница между модулем, обнаруживающим событие, и модулем, реализующим обратный вызов для обработки события. В этом случае вы не писали операционную систему Android, и поэтому onListItemClick()
является обратным вызовом в ваш собственный код, который ОС будет вызывать, чтобы позволить вам обрабатывать щелчки элементов списка.