实例介绍
【实例截图】
【核心代码】
package cn.android.widget; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import org.custom.widget.R; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.ExpandableListView; import android.widget.ExpandableListView.OnChildClickListener; import android.widget.ExpandableListView.OnGroupExpandListener; import android.widget.Toast; @SuppressWarnings({"unused", "rawtypes"}) public class MainActivity extends Activity { ExpandableListView expandableList; TreeViewAdapter adapter; public List<HashMap<String, Object>> categories; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); setCategoris(); adapter = new TreeViewAdapter(this); expandableList = (ExpandableListView) findViewById(R.id.category_items); expandableList.setGroupIndicator(null); displayCategories(); } public void displayCategories() { adapter.RemoveAll(); adapter.notifyDataSetChanged(); List<TreeViewAdapter.TreeNode> treeNode = adapter.GetTreeNode(); for (int i = 0; i < categories.size(); i ) { TreeViewAdapter.TreeNode node = new TreeViewAdapter.TreeNode(); node.parent = categories.get(i); List child = ((ArrayList) categories.get(i).get("children")); for (int ii = 0; ii < child.size(); ii ) { node.childs.add(child.get(ii)); } treeNode.add(node); } adapter.UpdateTreeNode(treeNode); expandableList.setAdapter(adapter); expandableList.setOnGroupExpandListener(new OnGroupExpandListener() { @Override public void onGroupExpand(int groupPosition) { if(groupPosition != 0){ expandableList.setSelectedGroup(groupPosition); } } }); expandableList.setOnChildClickListener(new OnChildClickListener() { @Override public boolean onChildClick(ExpandableListView arg0, View arg1, int parent, int children, long arg4) { String str = "parent id:" String.valueOf(parent) ",children id:" String.valueOf(children); HashMap map = (HashMap) ((ArrayList) categories.get(parent).get("children")).get(children); int catId = (Integer) map.get("cat_id"); String categoryName = (String) map.get("category_name"); Toast.makeText(MainActivity.this, "cat_id:" catId ", category_name:" categoryName, Toast.LENGTH_SHORT).show(); return false; } }); } public void setCategoris() { categories = new ArrayList<HashMap<String,Object>>(); HashMap<String, Object> mapFather1 = new HashMap<String, Object>(); mapFather1.put("cat_id", 1); mapFather1.put("drawable", R.drawable.category_new_in_icon); mapFather1.put("category_name", "New In"); mapFather1.put("description", "Dress/Coats/Lace"); ArrayList<HashMap<String, Object>> son1 = new ArrayList<HashMap<String,Object>>(); HashMap<String, Object> mapSon11 = new HashMap<String, Object>(); mapSon11.put("cat_id", 6); mapSon11.put("drawable", R.drawable.category_dresses1_icon); mapSon11.put("category_name", "Dress"); HashMap<String, Object> mapSon12 = new HashMap<String, Object>(); mapSon12.put("cat_id", 8); mapSon12.put("drawable", R.drawable.category_women_coats_icon); mapSon12.put("category_name", "Coats"); HashMap<String, Object> mapSon13 = new HashMap<String, Object>(); mapSon13.put("cat_id", 12); mapSon13.put("drawable", R.drawable.category_lace1_icon); mapSon13.put("category_name", "Lace"); HashMap<String, Object> mapSon14 = new HashMap<String, Object>(); mapSon14.put("cat_id", 12); mapSon14.put("drawable", R.drawable.category_chiffon1_icon); mapSon14.put("category_name", "Chiffon"); son1.add(mapSon11); son1.add(mapSon12); son1.add(mapSon13); son1.add(mapSon14); mapFather1.put("children", son1); HashMap<String, Object> mapFather2 = new HashMap<String, Object>(); mapFather2.put("cat_id", 2); mapFather2.put("drawable", R.drawable.category_collection_icon); mapFather2.put("category_name", "Shop Collection"); mapFather2.put("description", "Wintage/Going out/Workwear"); ArrayList<HashMap<String, Object>> son2 = new ArrayList<HashMap<String,Object>>(); HashMap<String, Object> mapSon21 = new HashMap<String, Object>(); mapSon21.put("cat_id", 21); mapSon21.put("drawable", R.drawable.category_vintage1_icon); mapSon21.put("category_name", "Vintage"); HashMap<String, Object> mapSon22 = new HashMap<String, Object>(); mapSon22.put("cat_id", 22); mapSon22.put("drawable", R.drawable.category_going_out1_icon); mapSon22.put("category_name", "Going out"); HashMap<String, Object> mapSon23 = new HashMap<String, Object>(); mapSon23.put("cat_id", 23); mapSon23.put("drawable", R.drawable.category_workwear1_icon); mapSon23.put("category_name", "Workwear"); HashMap<String, Object> mapSon24 = new HashMap<String, Object>(); mapSon24.put("cat_id", 24); mapSon24.put("drawable", R.drawable.category_designer1_icon); mapSon24.put("category_name", "Designer"); HashMap<String, Object> mapSon25 = new HashMap<String, Object>(); mapSon25.put("cat_id", 24); mapSon25.put("drawable", R.drawable.category_sweety1_icon); mapSon25.put("category_name", "Sweety"); HashMap<String, Object> mapSon26 = new HashMap<String, Object>(); mapSon26.put("cat_id", 24); mapSon26.put("drawable", R.drawable.category_maxi_dress1_icon); mapSon26.put("category_name", "Maxi Dress"); HashMap<String, Object> mapSon27 = new HashMap<String, Object>(); mapSon27.put("cat_id", 24); mapSon27.put("drawable", R.drawable.category_night_club1_icon); mapSon27.put("category_name", "Night Club"); HashMap<String, Object> mapSon28 = new HashMap<String, Object>(); mapSon28.put("cat_id", 24); mapSon28.put("drawable", R.drawable.category_print_floral1_icon); mapSon28.put("category_name", "Print/Floral"); HashMap<String, Object> mapSon29 = new HashMap<String, Object>(); mapSon29.put("cat_id", 24); mapSon29.put("drawable", R.drawable.category_party1_icon); mapSon29.put("category_name", "Party"); son2.add(mapSon21); son2.add(mapSon22); son2.add(mapSon23); son2.add(mapSon24); son2.add(mapSon25); son2.add(mapSon26); son2.add(mapSon27); son2.add(mapSon28); son2.add(mapSon29); mapFather2.put("children", son2); HashMap<String, Object> mapFather3 = new HashMap<String, Object>(); mapFather3.put("cat_id", 3); mapFather3.put("drawable", R.drawable.category_women_icon); mapFather3.put("category_name", "Clothing"); mapFather3.put("description", "Dress/Coats/Lace"); ArrayList<HashMap<String, Object>> son3 = new ArrayList<HashMap<String,Object>>(); HashMap<String, Object> mapson31 = new HashMap<String, Object>(); mapson31.put("cat_id", 6); mapson31.put("drawable", R.drawable.category_dresses1_icon); mapson31.put("category_name", "Dress"); HashMap<String, Object> mapson32 = new HashMap<String, Object>(); mapson32.put("cat_id", 8); mapson32.put("drawable", R.drawable.category_women_coats_icon); mapson32.put("category_name", "Coats"); HashMap<String, Object> mapson33 = new HashMap<String, Object>(); mapson33.put("cat_id", 33); mapson33.put("drawable", R.drawable.category_blouses_icon); mapson33.put("category_name", "Blouses"); HashMap<String, Object> mapson34 = new HashMap<String, Object>(); mapson34.put("cat_id", 34); mapson34.put("drawable", R.drawable.category_women_tees_icon); mapson34.put("category_name", "Tees/Vests"); HashMap<String, Object> mapson35 = new HashMap<String, Object>(); mapson35.put("cat_id", 35); mapson35.put("drawable", R.drawable.category_women_sweaters_icon); mapson35.put("category_name", "Sweaters/Cardigans"); HashMap<String, Object> mapson36 = new HashMap<String, Object>(); mapson36.put("cat_id", 36); mapson36.put("drawable", R.drawable.category_women_pants_icon); mapson36.put("category_name", "Pants/Shorts"); HashMap<String, Object> mapson37 = new HashMap<String, Object>(); mapson37.put("cat_id", 37); mapson37.put("drawable", R.drawable.category_women_skirt_icon); mapson37.put("category_name", "Skirts"); HashMap<String, Object> mapson38 = new HashMap<String, Object>(); mapson38.put("cat_id", 38); mapson38.put("drawable", R.drawable.category_women_leggings_icon); mapson38.put("category_name", "Leggings"); HashMap<String, Object> mapson39 = new HashMap<String, Object>(); mapson39.put("cat_id", 39); mapson39.put("drawable", R.drawable.category_women_jumpsuits_icon); mapson39.put("category_name", "Jumpsuits"); HashMap<String, Object> mapson40 = new HashMap<String, Object>(); mapson40.put("cat_id", 40); mapson40.put("drawable", R.drawable.category_women_formal_dresses_icon); mapson40.put("category_name", "Formal Dress"); HashMap<String, Object> mapson72 = new HashMap<String, Object>(); mapson72.put("cat_id", 72); mapson72.put("drawable", R.drawable.category_women_shapewear); mapson72.put("category_name", "Shapewear/Corset"); HashMap<String, Object> mapson73 = new HashMap<String, Object>(); mapson73.put("cat_id", 73); mapson73.put("drawable", R.drawable.category_women_swimwear); mapson73.put("category_name", "Swimwear"); son3.add(mapson31); son3.add(mapson32); son3.add(mapson33); son3.add(mapson34); son3.add(mapson35); son3.add(mapson36); son3.add(mapson37); son3.add(mapson38); son3.add(mapson39); son3.add(mapson40); son3.add(mapson72); son3.add(mapson73); mapFather3.put("children", son3); HashMap<String, Object> mapFather4 = new HashMap<String, Object>(); mapFather4.put("cat_id", 4); mapFather4.put("drawable", R.drawable.category_shoes_icon); mapFather4.put("category_name", "Shoes"); mapFather4.put("description", "Sandals/Heels/Flats"); ArrayList<HashMap<String, Object>> son4 = new ArrayList<HashMap<String,Object>>(); HashMap<String, Object> mapson41 = new HashMap<String, Object>(); mapson41.put("cat_id", 60); mapson41.put("drawable", R.drawable.category_shoes_sandals_icon); mapson41.put("category_name", "Sandals"); HashMap<String, Object> mapson42 = new HashMap<String, Object>(); mapson42.put("cat_id", 42); mapson42.put("drawable", R.drawable.category_shoes_heels_icon); mapson42.put("category_name", "Heels"); HashMap<String, Object> mapson43 = new HashMap<String, Object>(); mapson43.put("cat_id", 43); mapson43.put("drawable", R.drawable.category_shoes_flats_icon); mapson43.put("category_name", "Flats"); HashMap<String, Object> mapson44 = new HashMap<String, Object>(); mapson44.put("cat_id", 44); mapson44.put("drawable", R.drawable.category_shoes_boots_icon); mapson44.put("category_name", "Boots"); son4.add(mapson41); son4.add(mapson42); son4.add(mapson43); son4.add(mapson44); mapFather4.put("children", son4); HashMap<String, Object> mapFather5 = new HashMap<String, Object>(); mapFather5.put("cat_id", 5); mapFather5.put("drawable", R.drawable.category_bags_icon); mapFather5.put("category_name", "Bags"); mapFather5.put("description", "Dress/Coats/Lace"); ArrayList<HashMap<String, Object>> son5 = new ArrayList<HashMap<String,Object>>(); HashMap<String, Object> mapson51 = new HashMap<String, Object>(); mapson51.put("cat_id", 51); mapson51.put("drawable", R.drawable.category_handbags_icon); mapson51.put("category_name", "Handbags"); HashMap<String, Object> mapson52 = new HashMap<String, Object>(); mapson52.put("cat_id", 52); mapson52.put("drawable", R.drawable.category_shoulder_bags_icon); mapson52.put("category_name", "Shoulder Bags"); HashMap<String, Object> mapson53 = new HashMap<String, Object>(); mapson53.put("cat_id", 53); mapson53.put("drawable", R.drawable.category_backpacks_icon); mapson53.put("category_name", "Backpacks"); HashMap<String, Object> mapson54 = new HashMap<String, Object>(); mapson54.put("cat_id", 54); mapson54.put("drawable", R.drawable.category_clutches_icon); mapson54.put("category_name", "Clutches/Wallets"); son5.add(mapson51); son5.add(mapson52); son5.add(mapson53); son5.add(mapson54); mapFather5.put("children", son5); HashMap<String, Object> mapFather6 = new HashMap<String, Object>(); mapFather6.put("cat_id", 6); mapFather6.put("drawable", R.drawable.category_accessorie_icon); mapFather6.put("category_name", "Accessories"); mapFather6.put("description", "Holidays/Necklace/Earrings"); ArrayList<HashMap<String, Object>> son6 = new ArrayList<HashMap<String,Object>>(); HashMap<String, Object> mapson61 = new HashMap<String, Object>(); mapson61.put("cat_id", 61); mapson61.put("drawable", R.drawable.category_holidays_icon); mapson61.put("category_name", "Holidays"); HashMap<String, Object> mapson62 = new HashMap<String, Object>(); mapson62.put("cat_id", 62); mapson62.put("drawable", R.drawable.category_accesories_necklace_icon); mapson62.put("category_name", "Necklace"); HashMap<String, Object> mapson63 = new HashMap<String, Object>(); mapson63.put("cat_id", 63); mapson63.put("drawable", R.drawable.category_accesories_earrings_icon); mapson63.put("category_name", "Earrings"); HashMap<String, Object> mapson64 = new HashMap<String, Object>(); mapson64.put("cat_id", 64); mapson64.put("drawable", R.drawable.category_accesories_brooch_icon); mapson64.put("category_name", "Brooch"); HashMap<String, Object> mapson65 = new HashMap<String, Object>(); mapson65.put("cat_id", 65); mapson65.put("drawable", R.drawable.category_accesories_bracelets_icon); mapson65.put("category_name", "Bracelet"); HashMap<String, Object> mapson66 = new HashMap<String, Object>(); mapson66.put("cat_id", 66); mapson66.put("drawable", R.drawable.category_hair_icon); mapson66.put("category_name", "Hair Accessories"); HashMap<String, Object> mapson67 = new HashMap<String, Object>(); mapson67.put("cat_id", 67); mapson67.put("drawable", R.drawable.category_silk_scarves_icon); mapson67.put("category_name", "Scarves"); son6.add(mapson61); son6.add(mapson62); son6.add(mapson63); son6.add(mapson64); son6.add(mapson65); son6.add(mapson66); son6.add(mapson67); mapFather6.put("children", son6); HashMap<String, Object> mapFather7 = new HashMap<String, Object>(); mapFather7.put("cat_id", 7); mapFather7.put("drawable", R.drawable.category_recommendation_icon); mapFather7.put("category_name", "Recommendation"); mapFather7.put("description", "Hot/New"); ArrayList<HashMap<String, Object>> son7 = new ArrayList<HashMap<String,Object>>(); HashMap<String, Object> mapson71 = new HashMap<String, Object>(); mapson71.put("cat_id", 71); mapson71.put("drawable", R.drawable.category_hot_icon); mapson71.put("category_name", "Hot"); HashMap<String, Object> mapson720 = new HashMap<String, Object>(); mapson720.put("cat_id", 72); mapson720.put("drawable", R.drawable.category_new_icon); mapson720.put("category_name", "New"); son7.add(mapson71); son7.add(mapson720); mapFather7.put("children", son7); categories.add(mapFather1); categories.add(mapFather2); categories.add(mapFather3); categories.add(mapFather4); categories.add(mapFather5); categories.add(mapFather6); categories.add(mapFather7); } }
标签: 安卓
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论