为listview的item中的元素设置onclick事件

表达能力比较差,所以现在解释一下标题的意思:
listview的列表项,点击的时候触发的是itemOnClick事件,点击后转向到A页;那么,假如在子项中有一个连接是想转到B页,我们该怎么办呢。这样能明白了吧,好,现在我说一下解决的办法:
有两种办法,一种是重写adapter,一种是在你的子项中的元素中设置onclick事件(注意,是在xml中设置onclick元素)
我只做了第一种方法,演示如下:
我们继承adapter的基类,然后重写getView

@SuppressWarnings("unchecked")
public View getView(int position, View convertView, ViewGroup parent) {

convertView = mInflater.inflate(this.resource, null);

Map item = data.get(position);

int count = to.length;

for (int i = 0; i < count; i++) {

View v = convertView.findViewById(to);

bindView(v, item, from);

}
//下面的几行是亮点

View avatar = convertView.findViewById(R.id.row_avatar);//获取你要点击的组件

if (null != avatar) {//判断一下,省得出现什么错误

avatar.setTag(item);//我们可以利用setTag来存储数据,传给触发事件

avatar.setOnClickListener(avatarClickListener);//触发事件代码往下看

}

return convertView;

}

//这个就是触发的事件,根据自己的要求写
private OnClickListener avatarClickListener = new OnClickListener() {

@SuppressWarnings("unchecked")

public void onClick(View v) {

Map item = (Map) v.getTag();//还记得上面的那个setTag么?我们在这里给丫取出来

Intent mIntent = new Intent(AdapterWithHashMap.this.context,

MySelf.class);

mIntent.putExtra("user_id", item.get("uid").toString());

AdapterWithHashMap.this.context.startActivity(mIntent);

}

};

为listview的item中的元素设置onclick事件

时间: 2024-09-30 19:16:05

为listview的item中的元素设置onclick事件的相关文章

给网页中的元素添加onclick事件(引自锋利的jQuery)

<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta name="generator" content="editplus" /> <title>给网页中的元素添加onclick事件</p></title> <script src="jquery-1.7.1

ListView的Item中包含checkbox,Item无法点击的3种解决方案

ListView的Item中包含checkbox,Item无法点击的2种解决方案 1.在checkbox中设置`focusable属性 android:focusable="false" 2.设置Item的布局,焦点不向下传递 android:descendantFocusability="blocksDescendants"

安卓Android控件ListView获取item中EditText值

可以明确,现在没有直接方法可以获得ListView中每一行EditText的值. 解决方案:重写BaseAdapter,然后自行获取ListView中每行输入的EditText值. 大概算法:重写BaseAdapter.getView函数,用一个数组存储EditText中的值,根据position即数组下标,在getView中动态更新EditText和动态获取EditText中的值.因为ListView中的item是复用的,如果不动态清空或动态获取EditText中值,就会出现数据紊乱,或者没数

Android控件ListView获取item中EditText值

可以明确,现在没有直接方法可以获得ListView中每一行EditText的值. 解决方案:重写BaseAdapter,然后自行获取ListView中每行输入的EditText值. 大概算法:重写BaseAdapter.getView函数,用一个数组存储EditText中的值,根据position即数组下标,在getView中动态更新EditText和动态获取EditText中的值.因为ListView中的item是复用的,如果不动态清空或动态获取EditText中值,就会出现数据紊乱,或者没数

巧妙使用Jquery 改变元素的 onclick 事件

需要点击图片将套组发布, 页面代码: Html代码   <img width="20px" src=" <s:property value="IMAGES_PATH" /><s:if test='%{releaseStatus == "YES"}'>pubed.png</s:if> <s:else>nopub.png</s:else>" onclick=&quo

ListView的Item中带按钮以及按钮布局的显示与隐藏

一.上图 二.图片功能解说 1.点击ListView中其中的一项,Item中处于隐藏状态的操作按钮部分布局显示,其他项显示的布局同时被隐藏,再次点击该项,操作按钮部分布局再次隐藏. 2.点击各个按钮,分别弹出哪个按钮被点击(也就是点击每一个按钮分别处理不同按钮的业务功能). 三.实现代码主要处于适配器的处理.见如下代码: package com.test.listviewbtn.adapters; import java.util.ArrayList; import android.conten

listview的item中嵌套多个EditText时的问题

项目需求:列表展示数据,同时可以修改,保存编辑过的数据(编辑某个数据时背景加深). 问题1:当访问数据库,下载数据后使用adapter展示后,由于item中包含EditText,点击某一个EditText,该EditText获得焦点,光标显示,此时滚动listview会发现光标也会跑到别的item的EditText控件里面. 解决方案:在listview的onScrollChangedListener里面设置listview滚动时,listview.requestfocus(). 问题2:编辑某

android ListView的item中Button(购物数量加减器)

1.临时保存每个item中的显示数量控件的text: HashMap<Integer,Interger> map = new HashMap<Integer,Integer>(); 使用map来保存每条item显示的数量值.EditText在BaseAdapter中的getView() 方法中去显示对应position的map中的值,如下: editText.setText(map.get(position)); 2. "-"和"+"添加点击

android 在 ListView 的 item 中插入 GridView 仿微信朋友圈图片显示。

转载请声明出处(http://www.cnblogs.com/linguanh/) 先上张效果图: 1,思路简述 这个肯定是要重写 baseAdapter的了,这里我分了两个数据适配器,一个是自定义的 listView的item 风格xml,另一个是该风格xml文件里面的嵌套的GridView数据适配.然后我们需要两个数据辅助类,类似上述,一个是专门来保存在GridView中要显示的每张图片的信息,例如它的url.name.id等等,暂称该辅助类为 UserImgs,大家可以随便增删,另一个是总