如何获取listview的item

如何获取listview的item,第1张

得到listview中的itemview具体方法如下:

在getView()方法中,给convert View设置setTag(),可以将position或者view设置完成后进去,然后在on Click方法中通过getTag()获得所设置的值,就完成获取任务了。

首先写个ListView 的数据适配器,抽离出来,写一个对象,用来设置listView 每条Item 的 的对象,可以采用ConvertView 设置setTag 将View 房子tag中,可以通过ListvIEW getChildAt()getTag 取得你想要的对象,设置参数,还是铁代码吧!

getView:

ItemObj viewHolder = null;

if(convertView == null){

viewHolder = new ItemObj();

convertView = mLayoutInflateinflate(Rlayoutsimple_item, null);

viewHoldermSimpleCardName = (TextView) convertViewfindViewById(Ridsimple_name);

viewHoldermIsReTake = (TextView) convertViewfindViewById(Ridsimple_num);

viewHoldermContentNext = (TextView)convertViewfindViewById(Ridstatus);

viewHoldermIsNext = (TextView) convertViewfindViewById(Ridicon_next);

convertViewsetTag(viewHolder);

}else{

viewHolder = (ItemObj) convertViewgetTag();

}

PhotoList aPotoLists = (PhotoList) getItem(position);

if(aPotoLists!= null){

viewHoldermSimpleCardNamesetText(aPotoListsphotoName);

if(KeyInMapITFTAKESIMPLE_PIC_TEP!= null){

viewHoldermIsReTakesetText("("+0+")");

if(KeyInMapITFTAKESIMPLE_PIC_TEPequals(aPotoListsphotoName)){

ArrayList<PhotoList> aLists= (ArrayList<PhotoList>) GlobalParameterget(KeyInMapITFTAKESIMPLE_PIC_TEP);

viewHoldermIsReTakesetText("("+aListssize()+")");

}

}

if(aPotoListsstatusequals("0")){

viewHoldermContentNextsetText("未审核");

viewHoldermIsNextsetBackgroundDrawable(mContextgetResources()getDrawable(Rdrawabletask_list_arrows));

}else{

viewHoldermContentNextsetText("已审核");

viewHoldermIsNextsetText("");

convertViewsetOnClickListener(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) {

thismSimpleCardName = mSimpleCardName;

}

public TextView getmIsReTake() {

return mIsReTake;

}

public void setmIsReTake(TextView mIsReTake) {

thismIsReTake = mIsReTake;

}

public TextView getmContentNext() {

return mContentNext;

}

public void setmContentNext(TextView mContentNext) {

thismContentNext = mContentNext;

}

public TextView getmIsNext() {

return mIsNext;

}

public void setmIsNext(TextView mIsNext) {

thismIsNext = mIsNext;

}

在 adapter 的 getView 里面做处理

在List<Entity> 在Entity 里加一个isChecked 字段

点击button时执行adapternotifidatasetchanged刷新listview

此时出发adapter的getview,在这里判断entityisChecked,做自己需要的处理

首先listview 在setadapter的时候确定写的是正确的~而且是自定义的。因为通过adapter的getItem函数就可以取到内容了,一定要保证写的没错!

然后就设置listView的点击事件

listViewsetOnItemClickListener(new OnItemClickListener()

{

@Override

public void onItemClick(AdapterView<> parent, View view, int position, long id)

{

String str = (String) ((TextView) view)getText();

//str就是textView上的内容

}

});

以上就是关于如何获取listview的item全部的内容,包括:如何获取listview的item、android中怎么获取listview的item的信息、Android如何获取Listview中的item等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9578358.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存