数据的显示listView使用

效果图

2011052400221214.jpg

1、先定义item

  

ContractedBlock.gif ExpandedBlockStart.gif item.xml
 
   
<? xml version="1.0" encoding="utf-8" ?>
< LinearLayout
xmlns:android ="http://schemas.android.com/apk/res/android"
android:orientation
="horizontal"
android:layout_width
="fill_parent"
android:layout_height
="wrap_content" >
< TextView
android:layout_width ="80dip"
android:layout_height
="wrap_content"
android:id
="@+id/personid"
/>
< TextView
android:layout_width ="100dip"
android:layout_height
="wrap_content"
android:id
="@+id/name"
/>
< TextView
android:layout_width ="fill_parent"
android:layout_height
="wrap_content"
android:id
="@+id/amount"
/>
</ LinearLayout >

2、通过适配器把数据绑定到listview中,点击某一行数据显示编号

  方式一:

  

ContractedBlock.gif ExpandedBlockStart.gif 方式一
 
   
List < HashMap < String, Object >> data = new ArrayList < HashMap < String,Object >> ();
for (Person person :persons){
HashMap
< String, Object > hashMap = new HashMap < String, Object > ();
hashMap.put(
" id " , person.getPersonId());
hashMap.put(
" name " , person.getName());
hashMap.put(
" amount " , person.getAmount());
data.add(hashMap);
}

SimpleAdapter adapter
= new SimpleAdapter( this ,data,R.layout.item, new String[]{ " id " , " name " , " amount " }, new int []{R.id.personid,R.id.name,R.id.amount});
listView.setAdapter(adapter);
listView.setOnItemClickListener(
new OnItemClickListener(){
@Override
public void onItemClick(AdapterView <?> parent, View view,
int position, long id) {
ListView myListView
= (ListView)parent;
HashMap
< String, Object > item = (HashMap < String, Object > )myListView.getItemAtPosition(position);
Toast.makeText(DBActivity.
this , item.get( " id " ).toString() , Toast.LENGTH_SHORT).show();
}

});

方式二:用游标的方式

ContractedBlock.gif ExpandedBlockStart.gif 方式二
 
   
Cursor cursor = personService.getCursor( 0 , 15 );
// 要求字段中要有_id 设计表的时候的主键为_id
SimpleCursorAdapter cursorAdapter = new SimpleCursorAdapter( this ,R.layout.item,cursor, new String[]{ " _id " , " name " , " amount " }, new int []{R.id.personid,R.id.name,R.id.amount});
listView.setAdapter(cursorAdapter);
listView.setOnItemClickListener(
new OnItemClickListener(){

/**
* parent当前所点击的listview对象
* view当前所点击的条目
*/
@Override
public void onItemClick(AdapterView <?> parent, View view,
int position, long id) {
ListView myListView
= (ListView)parent;
Cursor data
= (Cursor)myListView.getItemAtPosition(position); // 根据位置移动游标
int m = data.getInt(data.getColumnIndex( " _id " ));
Toast.makeText(DBActivity.
this , String.valueOf(m) , Toast.LENGTH_SHORT).show();
}

});

转载于:https://www.cnblogs.com/tjpfly/archive/2011/05/24/android_listview.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值