-4

为什么我们在setOnClickListener方法中传递这些参数?

请详细解释一下?

Button button = (Button) findViewById(R.id.button_send);
button.setOnClickListener(new View.OnClickListener() {
     public void onClick(View v) {
          // Do something in response to button click
     }
});    
4

2 回答 2

1

其实这些都不是参数,如果你熟悉Java,你可能听说过Anonymous Inner Classes。因此,您只需实施onClickListener.

button.setOnClickListener(this);在您的代码中将此作为参数传递并执行OverrideonClick方法。

于 2013-02-22T11:29:11.753 回答
1

button.setOnClickListener它实际上是在创建一个匿名内部类,它实现OnClickListener.了一个匿名类,它使用 new 运算符在一个简洁的表达式中定义和实例化。它用于创建简单的委托回调对象。这些匿名内部类可以访问封闭外部类的静态和实例变量。

更多详情,请查看链接

于 2013-02-22T11:32:58.043 回答