选中项的文本值:thislistView1SelectedItems[0]Text;
选中项的子项的文本值
thislistView1SelectedItems[0]SubItems[0]Text;(SubItems[0]表示选中项的第一个子项,第二个子项就是SubItem[1],第三个就是SubItems[2]以此类推)
首先写个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;
}
本地数据就用ormlite-android-419jar和ormlite-core-419jar 可以帮助你管理本地数据,网络上的数据应该要后台做接口让你去调用,adapter可以写一个方法addpendList或者setList,这两个方法都是控制当前adapter持有的list的,adapter可以持有这个list并且给每个item设置布局。
本地得到的数据就是List,如果是服务器的数据就是JSON格式,可以用JSONUtiljava之类的去解析然后获取list,不是list的数据就直接resgetString("name");
ListViewSetAdapter();就可以设置adapter了,然后adapter如果有数据就会填充List
刷新的话是adapternotifyDataSetChanged();
首先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上的内容
}
});
如果是一整行的数据,假设现在一行有4个数据吧。
如果要遍历的话用foreach来实现
int
i=0;
StreamWriter
SW=new
StreamWriter(@"D:\testtxt",true);
foreach(ListViewItem
LVI
in
thisListView1Items
)
{
SWWrite(LVISubItem[0]text+"|");
SWWrite(LVISubItem[1]text+"|");
SWWrite(LVISubItem[2]text+"|");
SWWriteLine(LVISubItem[3]text);
}
SWClose();
上面是简单的实现将LivsView中的数据写入一个testtxt的文本文档中,每一行ListView的数据用
|
隔开,每写完一行后,转入下一行进行写数据,知道遍历完整个ListView的数据,此外当一行的数据很多的时候,也可以用SubItemsCounts来得到它的个数,并用循环分别读取,由于为了演示的方便,就直接列出了4个
以上就是关于C#如何获取listview选中项全部的内容,包括:C#如何获取listview选中项、android中怎么获取listview的item的信息、怎样获取显示的listview每个条目的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)