【Android开发项目】使用Android和SQLite开发一个购物车功能

该文章介绍了如何使用AndroidUI设计、SQLite数据库、适配器和ViewModel来开发购物车功能,特别强调了商品折扣的计算规则。通过遍历购物车列表,对商品数量和折扣进行处理,以实现金额结算。源代码将在后续整理后提供。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 描述:使用Android和SQLite开发一个购物车功能。(这个需求有点简单,就随便写一写,很多我都会跳过,如果不会的,专栏里有方法说明)
  • 难度:中级
  • 知识点(以下知识点大部分可在专栏中找到):
  • 0、TableLayout的使用
  • 1、关于icon在AndroidUI里的使用
  • 2、Sqlite数据库的应用
  • 3、adapter适配器的使用
  • 4、ViewModel数据监听
  • 5、xmlns-shape的使用

Android开发-购物车需求(折扣添加)

1、AndroidUI设计

风格普通,图片懒得去找。具体可以在专栏 【Android开发基础】三种常见的适配器(Adapter)【AndroidUI设计】icon矢量图标应用(低内存复应用) 中学习到

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、项目目录

在这里插入图片描述

3、数据库设计

很简单,就两张表,就不画图。

t_shop 商品表

字段名称数据类型字段描述
idint or bigint自增ID(唯一标识)
imageint or varchar图片路径
namevarchar名称
priceint价格
businessint or varchar商家ID or 商家名称
discountfloat折扣(让利)
timevarchar营业时间
desvarchar描述

t_cart 购物车表

字段名称数据类型字段描述
idint or bigint自增ID(唯一标识)
shop_idint or bigint商品ID
numberint数量

4、金额结算规则

按照折扣,只有第一份享受折扣。(当然还有第n份多少折,其实都很简单,就是for循环里嵌套了一个if判断)

public static Map<String, Object> CountZPrice(List<Cart> list){
        Map<String, Object> map = new ArrayMap<>();
        int z_number = 0;
        float z_price = 0;
        for (int i = 0; i < list.size(); i++) {
            z_price += (list.get(i).getNumber() - 1) * list.get(i).getShop().getPrice() +
                    list.get(i).getShop().getPrice() * list.get(i).getShop().getDis()/10;
            z_number += list.get(i).getNumber();
        }
        map.put("price", z_price);
        map.put("number", z_number);
        return map;
    }

5、源代码

花了三小时写完这项功能,我这边又有的忙了,就草草结束吧。有空我会将源代码整理出来。其实在本专栏里这写都可以学到,初学者可以自己试一试
优快云下载地址
git地址(免费)

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云端new守夜人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值