首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

intent几种传值数组、对象、聚合(Array,Object,List)

2013-01-21 
intent几种传值数组、对象、集合(Array,Object,List)http://www.cnblogs.com/userbibi/archive/2012/03/29/2

intent几种传值数组、对象、集合(Array,Object,List)

http://www.cnblogs.com/userbibi/archive/2012/03/29/2423202.html

1.Array

private?ArrayList<String> checkList=new?ArrayList<String>();???Intent intent=new??Intent(mytext.this,show.class);??intent.putStringArrayListExtra("list", checkList);??startActivity(intent);

 调用

?

?Intent intent=this.getIntent();?ArrayList<String> list=intent.getStringArrayListExtra("list");?ArrayList<HashMap<String,String>> mylist=new?ArrayList<HashMap< String,String>>();?///listview使用?ListView listview=(ListView)findViewById(R.id.MyListView);?for(int?i=0;i<list.size();i++)?{??HashMap<String,String> map=new?HashMap<String,String>();??map.put("ItemTitle", list.get(i).toString());??mylist.add(map);?}??SimpleAdapter mSchedule=new?SimpleAdapter(this,mylist,R.layout.show,new?String[]{"ItemTitle","ItemTitle"},new?int[]{R.id.ItemTitle,R.id.ItemTitle});listview.setAdapter(mSchedule);

?

2.对象、列表(object,List)

前面都一样,上遍文章已经讲解,这边补充一下,只讲一个Serializable的。。另一个Parcelable都差不多,各自实现各自的接口,调用的时候可以不用那么麻烦,真心不喜欢用Bundle ,挺多此一举的

改写

如果是List

??List<Parking_Info> list=new? ArrayList<Parking_Info>();//搜索结果集合

?Intent? intent=new?Intent(LinkMap.this,MapList.class);??????????????intent.putExtra("list", (Serializable)list);startActivity(intent);

这边直接强制转化就行了,再接受的时候用(List<Parking_Info>) getIntent().getSerializable("list")就可以接受到List<Parking_Info>数据了

Listlist=(List)getIntent().getSerializableExtra("list");

调用起来倒也方便的

具体调用,遍历代码

?@Override?public?void?onCreate(Bundle savedInstanceState) {?????????super.onCreate(savedInstanceState);?????setContentView(R.layout.listmain);????????//?? List<Parking_Info> list=(List<Parking_Info>)getIntent().getSerializableExtra("list");?????//创建适配器?????SimpleAdapter adapter = new?SimpleAdapter(this,getData(),R.layout.maplist,?????????????new?String[]{"name","kongwei","code","addr"},?????????????new?int[]{R.id.name,R.id.kongwei,R.id.code,R.id.addr});???????????setListAdapter(adapter);??// ListView listview=(ListView)findViewById(R.id.SearchList);//?? listview.setAdapter(adapter);?????????????};??????????????????private?List<Map<String, Object>> getData() {?????? ??????????List<Map<String, Object>> list = new?ArrayList<Map<String, Object>>();?????? ????????????????????//获取参数 ?????????List<Parking_Info> mylist=(List<Parking_Info>)getIntent().getSerializableExtra("list");??????????????????for(int?i=0;i<mylist.size();i++)?????????{??????????????Map<String, Object> map = new?HashMap<String, Object>();?????????????map.put("name",mylist.get(i).getPrk_name());?????????????map.put("kongwei","空位:"+mylist.get(i).getKongwei());?????????????map.put("code","收费:"+ mylist.get(i).getCode());?????????????map.put("addr","地址:"+mylist.get(i).getPrk_addr());??????????????list.add(map);??? ???????????//?? Toast.makeText(this, mylist.get(5).getPrk_name(), Toast.LENGTH_LONG).show();???????????????????}????????????????????return?list;??????????}

热点排行