[Java] 如何設置button.setOnClickListener()中的命名方法



Answers

View.setOnClickListener的參數必須是類View.OnClickListenerView類的內部類)的實例。對於您的用例,可以將此內部類的實例保存在變量中,然後將其傳入,像這樣:

View.OnClickListener clickListener = new OnClickListener() {
    public void onClick(View v) {
        // do something here
    }
};

myButton.setOnClickListener(clickListener);
myButton2.setOnClickListener(clickListener);

如果跨多個子例程/方法需要此偵聽器,則可以將其作為成員變量存儲在您的活動類中。

Question

我所看到的大多數示例在調用button.setOnClickListener()時都使用匿名方法。 相反,我想傳遞在我正在工作的Activity類中定義的方法.C#中以下事件處理程序接線的Java / Android等價物是什麼?

Button myButton = new Button();
myButton.Click += this.OnMyButtonClick;

哪裡:

private void OnMyButtonClick(object sender, EventArgs ea)
{
}

基本上,我想重用一個非匿名方法來處理多個按鈕的點擊事件。




Links