赞
踩
感觉自己还是很少写实际应用实现的博客。最近在找实习,写博客时间少了,但还是要坚持。今天这篇博客来讲下电商应用中常见的选择类别下拉列表的实现。先看下效果图:
一、下拉列表的实现
其实实现方法有很多,这时实现的也没有什么技术含量,只是总结下自己在项目中的做法,也提供一个思路。
首先是列表的数据,一般数据都是从后台读过来,这里因为没有后台,所以写死在客户端:
- private void initMenuData() {
- menuData1 = new ArrayList<Map<String, String>>();
- String[] menuStr1 = new String[] { "全部", "粮油", "衣服", "图书", "电子产品",
- "酒水饮料", "水果" };
- Map<String, String> map1;
- for (int i = 0, len = menuStr1.length; i < len; ++i) {
- map1 = new HashMap<String, String>();
- map1.put("name", menuStr1[i]);
- menuData1.add(map1);
- }
-
- menuData2 = new ArrayList<Map<String, String>>();
- String[] menuStr2 = new String[] { "综合排序", "配送费最低" };
- Map<String, String> map2;
- for (int i = 0, len = menuStr2.length; i < len; ++i) {
- map2 = new HashMap<String, String>();
- map2.put("name", menuStr2[i]);
- menuData2.add(map2);
- }
-
- menuData3 = new ArrayList<Map<String, String>>();
- String[] menuStr3 = new String[] { "优惠活动", "特价活动", "免配送费",
- "可在线支付" };
- Map<String, String> map3;
- for (int i = 0, len = menuStr3.length; i < len; ++i) {
- map3 = new HashMap<String, String>();
- map3.put("name", menuStr3[i]);
- menuData3.add(map3);
- }
- }
就是做了简单的封装。弹出列表的实现考虑使用Popwindow。
- popMenu = new PopupWindow(contentView,
- LinearLayout.LayoutParams.MATCH_PARENT,
- LinearLayout.LayoutParams.MATCH_PARENT);
- popMenu.setOutsideTouchable(true);
- popMenu.setBackgroundDrawable(new BitmapDrawable());
- popMenu.setFocusable(true);
- popMenu.setAnimationStyle(R.style.popwin_anim_style);
- popMenu.setOnDismissListener(new OnDismissListener() {
- public void onDismiss() {
- productTv.setTextColor(Color.parseColor("#5a5959"));
- sortTv.setTextColor(Color.parseColor("#5a5959"));
- activityTv.setTextColor(Color.parseColor("#5a5959"));
- }
- });
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。