Android - setOnClickListener против OnClickListener против View.OnClickListener

Насколько я понимаю, когда я создаю объект кнопки, который прослушивает щелчок, я должен:

Создать объект кнопкииспользованиеOnClickListner заставить его слушать клик пользователяиспользованиеonClick выполнять действия после нажатия кнопки пользователем

Сейчас,

Где жеsetOnClickListener вписывается в вышеприведенную логику?Кто на самом деле слушает нажатие кнопки?setOnClickListener?OnClickListener?View.OnClickListener?Каковы различия между этими тремя?

Вот что я нашел в Android Dev:

//The example below shows how to register an on-click listener for a Button.

// Create an anonymous implementation of OnClickListener
private OnClickListener mCorkyListener = new OnClickListener() {
    public void onClick(View v) {
      // do something when the button is clicked
    }
};

protected void onCreate(Bundle savedValues) {
    ...
    // Capture our button from layout
    Button button = (Button)findViewById(R.id.corky);
    // Register the onClick listener with the implementation above
    button.setOnClickListener(mCorkyListener);
    ...
}

Вы также можете найти это более удобным для реализацииOnClickListener как часть вашегоActivity, Это позволит избежать дополнительной нагрузки на класс и распределения объектов. Например:

public class ExampleActivity extends Activity implements OnClickListener {
    protected void onCreate(Bundle savedValues) {
        ...
         Button button = (Button)findViewById(R.id.corky);
         button.setOnClickListener(this);
    }

    // Implement the OnClickListener callback
    public void onClick(View v) {
      // do something when the button is clicked
    }
}

Ответы на вопрос(5)

Ваш ответ на вопрос