46

这两个听众有什么区别,文档说:

OnItemSelectedListener - 选择此视图中的项目时要调用的回调的接口定义。

OnItemClickListener - 单击此 AdapterView 中的项目时要调用的回调的接口定义。

选择,点击这些在触摸屏上不相等吗?

4

3 回答 3

58

OnItemSelectedListener 用于 Spinners,而 OnItemClickListener 用于 ListViews。

于 2010-11-14T13:03:56.980 回答
37

AdapterView.OnItemSelectedListener 仅在新选择的位置与先前选择的位置不同或没有选定项目时调用。

但是,即使您每次都单击同一个项目,也会调用 AdapterView.OnClickListener。

http://developer.android.com/reference/android/widget/AdapterView.OnItemSelectedListener.html

于 2014-02-11T04:42:57.660 回答
1

Android 区分了选择事件和点击事件。基于“微调器”范例的小部件(包括微调器和图库)将所有内容视为选择事件。其他小部件(如 ListView 和 GridView)以不同的方式处理选择事件和单击事件。对于这些小部件,选择事件由定点设备驱动,例如使用箭头键在列表中上下移动高亮条。点击事件是当用户“点击”定点设备(例如,按下中央方向键按钮)或使用触摸屏轻敲小部件中的某物时。

(来源:摘自《The Busy Coder's Guide to Android Development》3.8版)

于 2020-03-12T10:40:14.953 回答