android中怎么获取listview的item的信息

作者&投稿:束先 (若有异议请与网页底部的电邮联系)
Android如何获取Listview中的item~

在 adapter 的 getView 里面做处理

在List 在Entity 里加一个isChecked 字段
点击button时执行adapter.notifidatasetchanged刷新listview
此时出发adapter的getview,在这里判断entity.isChecked,做自己需要的处理

大概你是想处理点击listview中item的事件吧,推荐使用
listView.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView parent, View view, int position, long id) {// TODO Auto-generated method stub}});在点击事件的回调中包含position这个参数。

还有一种方法是在adapter的getView方法中使用View的setTag方法将position设置成某个item中某个view的tag,例如holder.textView.setTag(position)
然后在处理的地方获取这个position:
int position=(int)textView.getTag();从而做相应的处理。

相比来说第一个方法更加简单,但只能处理整个item的点击事件。第二种方法稍微复杂,但是可以解决一个item中有多个点击事件需要处理的情况。

首先写个ListView 的数据适配器,抽离出来,写一个对象,用来设置listView 每条Item 的 的对象,可以采用ConvertView 设置setTag 将View 房子tag中,可以通过ListvIEW .getChildAt().getTag. 取得你想要的对象,设置参数,还是铁代码吧!
  
  
  getView:
  ItemObj viewHolder = null;
if(convertView == null){
viewHolder = new ItemObj();
convertView = mLayoutInflate.inflate(R.layout.simple_item, null);
viewHolder.mSimpleCardName = (TextView) convertView.findViewById(R.id.simple_name);
viewHolder.mIsReTake = (TextView) convertView.findViewById(R.id.simple_num);
viewHolder.mContentNext = (TextView)convertView.findViewById(R.id.status);
viewHolder.mIsNext = (TextView) convertView.findViewById(R.id.icon_next);
convertView.setTag(viewHolder);
}else{
viewHolder = (ItemObj) convertView.getTag();
}

PhotoList aPotoLists = (PhotoList) getItem(position);

if(aPotoLists!= null){
viewHolder.mSimpleCardName.setText(aPotoLists.photoName);
if(KeyInMapITF.TAKESIMPLE_PIC_TEP!= null){
viewHolder.mIsReTake.setText("("+0+")");
if(KeyInMapITF.TAKESIMPLE_PIC_TEP.equals(aPotoLists.photoName)){
ArrayList<PhotoList> aLists= (ArrayList<PhotoList>) GlobalParameter.get(KeyInMapITF.TAKESIMPLE_PIC_TEP);
viewHolder.mIsReTake.setText("("+aLists.size()+")");
}
}

if(aPotoLists.status.equals("0")){
viewHolder.mContentNext.setText("未审核");
viewHolder.mIsNext.setBackgroundDrawable(mContext.getResources().getDrawable(R.drawable.task_list_arrows));

}else{
viewHolder.mContentNext.setText("已审核");
viewHolder.mIsNext.setText("");
convertView.setOnClickListener(null);
}
}
  
  
  obj 对象:
  public class ItemObj extends Object{
  public TextView mSimpleCardName;// 单证的名称
public TextView mIsReTake;// 0 是 单证拍照 1是重拍照片
public TextView mContentNext;// 未提交 未审核等
public TextView mIsNext;// 箭头
public TextView getmSimpleCardName() {
return mSimpleCardName;
}
public void setmSimpleCardName(TextView mSimpleCardName) {
this.mSimpleCardName = mSimpleCardName;
}
public TextView getmIsReTake() {
return mIsReTake;
}
public void setmIsReTake(TextView mIsReTake) {
this.mIsReTake = mIsReTake;
}
public TextView getmContentNext() {
return mContentNext;
}
public void setmContentNext(TextView mContentNext) {
this.mContentNext = mContentNext;
}
public TextView getmIsNext() {
return mIsNext;
}
public void setmIsNext(TextView mIsNext) {
this.mIsNext = mIsNext;
}


Android开发中怎么修改版本号
1 点击Android工程右键,选择“Properties”,打开属性界面。2 在打开的“Properties for Android_test”界面,左侧选择“Android”。3 在“Project build Target”里面选择想要改变的版本。4 点击“Apply”应用,即可完成版本改变。5 版本改变后可以看到工程界面处版本号变化。

在Android开发中,有哪些好的内存优化方式
decode format:解码格式,选择ARGB_8888\/RBG_565\/ARGB_4444\/ALPHA_8,存在很大差异 4.Bitmap对象的复用 缩小Bitmap的同时,也需要提高BitMap对象的复用率,避免频繁创建BitMap对象,复用的方法有以下2个措施 LRUCache : “最近最少使用算法”在Android中有极其普遍的应用。ListView与GridView等显示大量...

Android中如何修改系统时间
命令行 首先我想到的是手机root,然后命令行 date -s 要设置的时间1 关于如何调用命令行,请点击:安卓程序中调用 linux 命令 如果手机没 root 怎么破呢,继续往下看吧。获取系统权限修改 没有 root 的话,可以获取系统权限来设置,怎么设置呢,这个文章已经给出:如何使Android应用程序获取系统权限来...

Android Studio中怎么使用DDMS工具
首先,我们需要了解的是DDMS工具是个什么鬼?其实,DDMS(Dalvik Debug Monitor Service),是 Android 开发环境中的Dalvik虚拟机调试监控服务。可以进行的操作有:为测试设备截屏,查看特定行程中正在运行的线程以及堆信息、Logcat、广播状态信 息、模拟电话呼叫、接收SMS、虚拟地理坐标等,功能非常强大,对于...

Android开发中怎么修改版本号
1 点击Android工程右键,选择“Properties”,打开属性界面。2 在打开的“Properties for Android_test”界面,左侧选择“Android”。3 在“Project build Target”里面选择想要改变的版本。4 点击“Apply”应用,即可完成版本改变。5 版本改变后可以看到工程界面处版本号变化。

android 中的wifi-display 怎么使用?
4.连接成功后,我们操作的手机画面就将同步在显示器或者液晶电视中大屏显示了,这对于看手机照片、玩手机游戏以及看手机电影或者PPT会议来说,无疑相当方便 5.关于nubia Z7手机wifi display怎么用就为大家介绍到这里。随着无线视频技术的流行,今后该功能也可能被广泛应用 以Nubia Z7的“wifi display”为...

Android中如何解决侧拉栏与主界面的重叠
从上面的注释可以看到:init1这个方法时被Zygote调用来初始化系统的,init1会启动native的服务如SurfaceFlinger,AudioFlinger等等,这些工作做完以后会回调init2来启动Android的service。这里我们主要来关注init2的过程。init2中启动ServerThread线程,ServerThread中启动了一系列的服务,比如这些:ActivityManager...

android 怎么动态的加载类
android 如何动态的加载类---app插件技术 转自:http:\/\/blog.csdn.net\/mingli198611\/article\/details\/8858076 ?前言:?? ? ? 在目前的软硬件环境下,Native App与Web App在用户体验上有着明显的优势,但在实际项目中有些会因为业务的频繁变更而频繁的升级客户端,造成较差的用户体验,而这也恰恰是We...

关于Android 中 Options.inSampleSize怎么用
Android中Options.inSampleSize的用法为:1、设置恰当的inSampleSize可以使BitmapFactory分配更少的空间以消除该错误。inSampleSize的具体含义请参考SDK文档。例如:BitmapFactory.Options opts = new BitmapFactory.Options();opts.inSampleSize = 4;Bitmap bitmap = BitmapFactory.decodeFile(imageFile, opts);...

android中componentname怎么使用
ComponentName(组件名称)是用来打开其他应用程序中的Activity或服务的。ComponentName com = new ComponentName("com.example", "com.example.Test1");\/\/组件名称,第一个参数是包名,也是主配置文件Manifest里设置好的包名 第二个是类名,要带上包名 Intent intent = new Intent();\/\/设置部件 intent....

蒲县18984421084: android如何从网站上获取网站中list中数据并显示在自己的listview中 -
蒋封偏瘫: 这个如果对方有提供接口,那就是直接调用接口了.如果没有提供,就要自己写个爬虫程序,并解析好数据

蒲县18984421084: android 如何获取ListView被点击的那一行数据中的值? -
蒋封偏瘫: 给listview添加值的时候应该是有个存放数据的list,然后list.get(position)就可以获取了.Android(['ændrɔid])是一个以Linux为基础的半开源操作系统,主要用于移动设备,由Google和开放手持设备联盟开发与领导. Android 系统最初由安迪·鲁...

蒲县18984421084: Android中怎样获取ListView中每行中的数据,每行中包含多项数据,我想获取每行中其中一项数据,请高手指点 -
蒋封偏瘫: public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) { arg0.getItemAtPosition(arg2); //把上面的结果转成String,用Log打印出来看看,在进行subString截取 }

蒲县18984421084: android怎么获取listview上内容 -
蒋封偏瘫: 解决方案:重写BaseAdapter,然后自行获取ListView中每行输入的EditText值.大概算法:重写BaseAdapter.getView函数,用一个数组存储EditText中的值,根据position即数组下标,在getView中动态更新EditText和动态获取EditText中的值.因为...

蒲县18984421084: android关于如何取得listview列表里的内容,然后赋值到另一个activity.下面是部分代码,求大神指点 -
蒋封偏瘫: 你把错误贴出来可能容易看一点儿 也可以直接通过cursor来取String id = cursor.getString(cursor.getColumnIndex("_id"));String name = cursor.getString(cursor.getColumnIndex("title"));String age = cursor.getString(cursor.getColumnIndex("context"));

蒲县18984421084: android中怎么获取listview的item的信息 -
蒋封偏瘫: 首先写个ListView 的数据适配器,抽离出来,写一个对象,用来设置listView 每条Item 的 的对象,可以采用ConvertView 设置setTag 将View 房子tag中,可以通过ListvIEW .getChildAt().getTag. 取得你想要的对象,设置参数,还是铁代码吧!...

蒲县18984421084: android 桌面控件怎么获取listview -
蒋封偏瘫: 此 AppWidgetProvider 定义只的 onUpdate() 方法定义启动活动的 PendingIntent 和将它附加到 App Widget 的按钮与 setOnClickPendingIntent (int,PendingIntent).它包括一个循环来循环访问 appWidgetIds,是 Id 的数组中每个条目,ide 的通...

蒲县18984421084: Android如何获取listview里面的值 -
蒋封偏瘫: 在Item中写入 TextView textVIew=(TextView)view.findViewById(Textview的id) Toast.makeText(所在的Activity,textVIew.getText().toString(), Toast.LENGTH_SHORT).show();

蒲县18984421084: android中怎么从一个界面读取listview的值到另一个界面 -
蒋封偏瘫: final SimpleAdapter adapter = new SimpleAdapter(this, getData(), R.layout.mainlayout, new String[] { "text", "time", "image" }, new int[] { R.id.PL_TextView01, R.id.PL_TextView02, R.id.PL_ImageView01 }); lv.setAdapter(adapter);private ...

蒲县18984421084: 安卓怎么获取listview item内的数据 -
蒋封偏瘫: listview.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) { HashMap item = (HashMap)arg0.getItemAtPosition(arg2); String section =String....

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网