ListView有多个列,在什么事件中判断点击的是哪一列?
是在onListItemClick(ListView l, View v, int position, long id)中吗?如果是,如何判断是哪一列?
或是在自定义的适配器的getView(int position, View convertView, ViewGroup parent)中的列控件监听器setOnClickListener的onClick(View v)事件处理中实现吗?如果是,那又如何获取点击的所在行?
不知我的问题描述清楚没有?
是在onListItemClick(ListView l, View v, int position, long id)中吗?如果是,如何判断是哪一列?
或是在自定义的适配器的getView(int position, View convertView, ViewGroup parent)中的列控件监听器setOnClickListener的onClick(View v)事件处理中实现吗?如果是,那又如何获取点击的所在行?
不知我的问题描述清楚没有?
解决方案 »
- service莫名新启动的问题请教
- 问个简单问题
- android 如何检测bundle是否有值?
- 怎么判断手机屏幕是横屏的,还是竖屏的?全键盘手机大都是横屏的
- android 自适应分辨率
- 在listview点击item改变imageview的状态
- 两个fragment,都要调用同一个activity中的方法,怎么做?
- Read-only file system
- 手机QQ的用户头像时怎么获得的?
- 请问如何实现ActionBar的标题栏点击事件?
- jni char*转换成jstring时报Ljava/lang/ClassNotFoundException的错误
- android怎么获取当前动态壁纸
问题2. 你的方法肯定可以实现,既然已经有每一行的所属的View了,基本上可以随便折腾了,要判断所在行同样可参考position参数,
需要注意的是: 如果想获取指定行的数据最好不要依赖position,最好自定义数据集合去操作,否则你会取不到你想要的值
如果在自定义的适配器的getView(int position, View convertView, ViewGroup parent)中的列控件监听器setOnClickListener的onClick(View v)事件处理中实现,虽然这里的v是所点击的控件,但在onClick中判断控件所在行引用position时出现Cannot refer to a non-final variable position inside an inner class defined in a different method的错误,如何解决?
你要把position 定为final 如:public View getView(final int position, View convertView, ViewGroup parent)