接口有没有被子类继承?

rt,如ListView 继承自 AbsListView ,AbsListView 又继承自 AdapterView,而AdapterView定义了一个内部接口OnItemClickListener,public的。
那么我的问题是:能用ListView. OnItemClickListener而不是AdapterView. OnItemClickListener实现事件监听么?如果内部接口被继承,子类应该可以访问父类的OnItemClickListener,但是试了下好像不行。。。
想听下语法解释,不好意思基础差啊。。。。

阅读 4.1k
2 个回答

OnItemClickListener是接口,不是内部类。接口需要你去implement。
一般的做法是:
listview.setOnItemClickListener(mListener);
然后定义这个listener,并实现其接口规定的方法。

Update

不理解你如此定义new ListView. OnItemClickListener()的意图,但之所以出错,也许你是没有导入import android.widget.AdapterView.OnItemClickListener;

从形式上看,下面三种都可以,它们都是实现了由AdapterView定义的接口:

new OnItemClickListener()
new AdapterView.OnItemClickListener()
new ListView.OnItemClickListener()

而如果你尝试导入import android.widget.ListView.OnItemClickListener; 会得到错误

The import android.widget.ListView.OnItemClickListener cannot be resolved
OnItemClickListener cannot be resolved to a type

楼主你的代码贴出来看看呗?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏