Listener意为监听器
Adapter意为适配器
监听器和适配器是什么?
如果一个类里声明了抽象方法,那么它也必须声明为抽象的。换句话说,包含有抽象方法的类就是抽象类。
如果一个类里面的方法都是抽象的,那么它就是一个接口,也就是说,接口是一种特殊的抽象类。(当然,抽象类跟接口是有区别的,本文并不深入讨论这个问题)
事件的监听程序(Listener)是接口中的一个未实现的方法。
很明显,监听器实质上就是一个接口(Interface)。
适配器(Adapter)是跟监听器一一对应的类。它实现了对应监听器中的所有方法,但都是空方法。注意:适配器是一个抽象类(abstract class)
当一个类实现一个接口时,即使不准备使用某个方法,也必须给出接口中所有方法的实现,适配器可以替代接口来处理事件,当java提供处理事件的接口中多于一个方法时,java就相应的提供一个适配器类,比如:MouseAdapter,windowAdapter等等。
在实际使用中,适配器只是作为方便程序员编程的一个手段,一般情况下程序员都要重写适配器中某些需要的方法,以达到所要的功能,如果只是一个适配器,那么它什么也不干。
ArrayAdapter<String> adapter=new ArrayAdapter<>(MainActivity.this,android.R.layout.simple_list_item_1,data);
//5、将适配器加载到控件中
listView.setAdapter(adapter);
//6、为列表中选中的项添加单击响应事件
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int i, long l) {
String result=((TextView)view).getText().toString();
Toast.makeText(MainActivity.this,"您选择的水果是:"+result,Toast.LENGTH_LONG).show();
}
});
————————————————
版权声明:本文为CSDN博主「撩得Android一次心动」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/indeedes/article/details/119530068