iOS 编程:购物车示例

2020-07-14  本文已影响0人  独木舟的木

ShoppingCartDemo

目录

背景

本项目为 iOS 应用中电商项目下的购物车页面示例。

本项目源码

声明:本项目源码仅用于学习交流!

功能特点

要求

第三方依赖

作为新时代的开发者,我们应该纯粹地感到幸福,因为我们可以站在巨人的肩膀上。本项目的完整实现得益于以下开源项目的支持:

实现说明

友好的空白页面

本项目中集成了 DZNEmptyDataSet 框架,当购物车中没有商品时,在空白页面显示提示信息,提升用户体验。

商品选中/取消选中

购物车中,商品的单选按钮实现逻辑如下:

修改商品数量

在购物车页面中,支持修改单个商品数量。

商品收藏、删除功能

支持在任意商品上,通过左滑手势实现商品移入收藏夹、删除商品功能:

默认情况下,如果要删除某一个 section 下的 cell,通过以下代码即可实现:

NSIndexPath *indexPath = [self.tableView indexPathForCell:cell];
[self.tableView deleteRowAtIndexPath:indexPath withRowAnimation:UITableViewRowAnimationLeft];

但是当这个 section 下只有一个 cell 时,也就是,这家店铺下只有这一件商品,当我们删除了这件商品后,这家店铺同时也要删除。因此,删除商品后,更新 UI 我使用了 [self.tableView reloadData] 刷新了整个购物车列表。

店铺主页、商品详情页面跳转功能

使用说明

实现架构

购物车页面逻辑遵循 MVC 设计模式。并且尽量按照高内聚低耦合的设计原则分离代码。

Controller:

View:

Model:

Proxy:

集成

本项目只是给出了一个通用的范例,具体到业务中还需要再做适配和调整。

如何贡献

欢迎任何贡献,有关如何参与到本项目的信息,请参见 CONTRIBUTING

使用许可

本项目基于 MIT 许可协议,详情请参见 LICENSE

上一篇下一篇

猜你喜欢

热点阅读