View firstButton = findViewById ( R.id.button1 );
firstButton.setOnClickListener(this);
View secondButton = findViewById(R.id.button2);
secondButton.setOnClickListener(this);
在代码中,this
关键字引用的内容作为setOnClickListener()
答案 0 :(得分:3)
它将是Activity
的当前实例。 (我猜也可能是View
。
最终,this
指的是它所在的类的实例。
答案 1 :(得分:2)
'this'始终是对当前实例的引用,即当前正在执行的方法所属的实例。因此,如果当前正在执行的方法是Activity类的方法,那么'this'指的是此Activity类的实例。
更重要的是,特别是关于setOnClickListener,'this'应该引用一个实例,无论其确切类型如何,它都实现View.OnClickListener接口(因此表现为一个监听器点击事件)。这是因为Button.setOnClickListener特别期望'OnClickListener' - 点击事件的监听器 - 作为参数。该方法的签名是:
void Button.setOnClickListener(View.OnClickListener l)