- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
P3.5购物车开发
P3.5.1购物车页界面设计
购物车页界面整体釆用垂直方向的线性布局,上部主要区域填充一个列表视图显示购物车 中的商品,底部结算栏是一个相对布局,如图P3.42所示。对应UI设计文件为activity_preshop. xml,代码略。用户只有登录验证通过后才能看见购物车页的内容。
列表视图|联想/ThinkPad E490笔记本 电脑商品条目项□卜 \敘朴丁“厂;]区卜选中购买合计 10198.00结算
列
表
视
图
|联想/ThinkPad E490笔记本 电脑
商品条目项
□卜 \敘朴丁“厂;]区卜
选中购买
合计 10198.00
结算
——移出购物车
调整购买数量
图P3.42购物车页运行界面及功能
P3.5.2开发列表视图
列表视图的详细开发过程参见P3.3.4。
1) 列表项UI设计
针对购物车页列表视图的列表项进行UI设计,对 应的文件为item_preshop.xml,同样釆用多层线性布局嵌套图像和其他控件的方式,代码略。
2) 定义数据模型
购物车页上每个商品条目项要显示商品图片(image)、商品名称(pname)、价格(pprice)、 数量(pnum)这几项,再加上用于标识条目项的商品号(pid)和指示是否选中确认购买(confi rm), 一共要声明6个属性,在构造方法中将数量(pnum)置为1、确认购买(confirm)置为fk Ise (默认购买数量为1且不选中)。模型类ComPreShop.java按规范编写,代码略。
3) 开发适配器
购物车页的适配器也继承自BaseAdapter,且与前面介绍的主页列表适配器 的程序代码结构完全一样,差异仅在于:
(1) 适配器内定义的泛型列表是以购物车模型ComPreShop类作为其成员 对象类型的。
(2) ViewHolder类中声明的属性与购物车列表项UI中的各子控件 对应,通过getView
()方法从convertView参数获取的内容项视图中的控件也要与购物车列表项UI中的一致。
购物车页适配器源文件ComPreShopAdapter.java,代码略。
经以上3步,所开发的列表视图就可以被购物车页的主程序(PreShopActivity)拿去使用了。
P3.5.3选中购买
选中某商品条目项的复选框(CheckBox),底部“合计”栏动态显示选中的商品总金额。
1 ?
为了实现复选框效果,在工程的drawable目录下放入两张图片checked.png I~回^^回. 和uncheck.png,分别对应复选框被选中与未选中状态下的外观,用状态列表图 形控制文件checkbox_style.xml切换显示这两种外观。
2.开发接口 I 状态列表图形
在购物车适配器ComPreShopAdapter.java中进行下面3步编程:
布置接口:
private ChangeConfirmShopListener myChangeConfirmShopListener;
public static interface ChangeConfirmShopListener (
public void changeConfirmShop(ArrayList<CoinPreShop> cpsList);
}
实例化接口:
public ComPreShopAdapter( ChangeConfirmShopListener ccslistener) {
myChangeConfirmShopListener = ccslistener;
}
回调接口方法:
vholder.checkbox_confirm.setOnCheckedChangeListener(new CompoundButton.On
CheckedChangeListener() (
?Override
public void onCheckedChanged(CompoundButton CompoundButtonr boolean b)
(
if (b) comPreShop.confirm = true;
else comPreShop.confirm = false;
myChangeConfirmShopListener.changeConfirmShop(myComPreShopLi st);
}
});
P3.5.4移出购物车
点某商品条目项的叉号(ImageView,对应背景图片icon_delete.png放在drawable目录下), 将该商品移出购物车,购物车中该商品条目项消失不见。
1 .开发接口
在购物车适配器ComPreShopAdapter.java中进行下面3步编程:
布置接口:
private DelfromPreShopL
您可能关注的文档
- 创新创业学混合式教学方案.docx
- 成本会计-习题答案.docx
- 保险学原理与实务 补充材料:重疾险新规.docx
- MySQL实用教程(新体系.综合应用实例视频)(第4版)-网络文档-附录B.docx
- MySQL实用教程(新体系.综合应用实例视频)(第4版)-网络文档-P3.4 主页丰富开发.docx
- MySQL实用教程(新体系.综合应用实例视频)(第4版)-网络文档-P2第2部分.docx
- MySQL实用教程(新体系.综合应用实例视频)(第4版)【例9.19】.docx
- MySQL实用教程(新体系.综合应用实例视频)(第4版)【例9.15】.docx
- MySQL实用教程(新体系.综合应用实例视频)(第4版)【例9.11】.docx
- MySQL实用教程(新体系.综合应用实例视频)(第4版)【例9.9】.docx
文档评论(0)