0
View  firstButton   = findViewById ( R.id.button1 );    
firstButton.setOnClickListener(this);     
View secondButton = findViewById(R.id.button2);    
secondButton.setOnClickListener(this);

在代码中,this关键字 whis 所指的内容作为参数传递setOnClickListener()

4

2 回答 2

3

这将是Activity. (我想它也可能是一个View)。

最终,this指的是它所在的类的实例。

于 2012-07-10T21:33:52.100 回答
2

'this' 始终是对当前实例的引用,即当前正在执行的方法所属的实例。因此,如果当前执行的方法是一个 Activity 类的方法,那么“this”指的是这个 Activity 类的实例。

更重要的是,特别是关于 setOnClickListener,'this' 应该指一个实例,无论其确切类型如何,都实现了View.OnClickListener接口(因此充当点击事件的侦听器)。这是因为 Button.setOnClickListener 特别需要一个“OnClickListener”——点击事件的监听器——作为参数。该方法的签名是:

void Button.setOnClickListener(View.OnClickListener l)
于 2012-07-10T21:45:56.960 回答