IOS详解TableView——选项抽屉(天猫商品列表)

IOS详解TableView——实现九宫格效果 根据需求九宫格的效果可以有很多种。 这里写了一个在UITableView上显示九宫格效果的Demo。 思路:在Cell上初始化自定义过得按钮,根据预设的每行按钮个数来决定他们在Cell上的位置。然后响应点击事件即可。整体实现不是很难,细节上注意一下即可。 搭建界面 数据,图片来自于天猫客户端的一些资源图片,然后还是以属性字典的方式读取提前设定的数据。 阅读详情



在之前的有篇文章讲述了利用HeaderView来写类似QQ好友列表的表视图。

这里写的天猫抽屉其实也可以用该方法实现,具体到细节每个人也有所不同。这里采用的是点击cell对cell进行运动处理以展开“抽屉”。

最后完成的效果大概是这个样子。



主要的环节:

点击将可视的Cell动画弹开。

其他的Cell覆盖一层半透明视图,将视线焦点集中在弹出来的商品细分类别中。

再次点击选中的或其他Cell,动画恢复到点击之前所在的位置。

商品细分类别属于之前写过的九宫格实现。这里就不贴代码了。之前的文章:点击打开链接


这里的素材都来自之前版本天猫的IPA。

加载数据


- (void)loadData
{
    NSString *path = [[NSBundle mainBundle] pathForResource:@"shops" ofType:@"plist"];
    NSArray *array = [NSArray arrayWithContentsOfFile:path];
    
    NSMutableArray *arrayM = [NSMutableArray arrayWithCapacity:array.count];
    [array enumerateObjectsUsingBlock:^(NSDictionary *dict, NSUInteger idx, BOOL *stop) {
        ProductType *proType = [[ProductType alloc] init];
        proType.name = dict[@"name"];
        proType.imageName = dict[@"imageName"];
        proType.subProductList = dict[@"subClass"];
        
        [arrayM addObject:proType];
    }];
    self.typeList = arrayM;
}


一个ProductType数据模型,记录名称,图片名称等。


单元格数据源方法

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    TypeCell *cell = [tableView dequeueReusableCellWithIdentifier:RTypeCellIdentifier];
    [cell bindProductKind:_typeList[indexPath.row]];
    return cell;
}

将数据模型的信息绑定到自定义类中进行处理,这个类在加载视图之后由tableview进行了注册。

iOS 仿百度外卖,饿了么-商品列表页 今天带来的是仿百度外卖的商品列表页 先看下效果图 阅读详情

相关推荐

iOS基础专栏目录指南之【基础模块】(持续更新)

文章目录引言I、 Objective-C1.1 对象模型1.2 动态特性(runtime)II、 UI基础2.1 UIKit基础控件手册2.2 系统控件的基本使用及常见问题的解决方案III、 UI进阶3.1 自定义MVVM视图IV、 iOS权限检测指南V、 调试VI、 swift 引言 I、 Objective-C Objective-C 的原意就是在 C 语言主体上加入面向对象的特性。 任何 C 语言程序不经修改就可以直接通过 Objective-C 编译器,在 Objective-C 中使用 C

专注于计算机研发知识和资讯分享 2992

ios-uitableView实现抽屉样式.zip

1.简单的抽屉样式。 2.只是简单的技术分享,不喜欢可以绕道,不喜勿喷。

ios-仿京东 列表选择城市列表 自带三级联动城市数据.zip

仿京东 列表选择城市列表 自带三级联动城市数据

ios-【联动】:两个TableView之间的联动,TableView与CollectionView之间的联动.zip

【iOS联动】新增功能:用户点击了左侧tableView中靠下的cell时,选中的cell会自动向上滚动。 github下载链接:https://github.com/leejayID/Linkage(欢迎Star,长期更新)。

swift-tableview抽屉点击cell弹出n个子cell依次类推支持cell行高自适应

tableview抽屉,点击cell弹出n个子cell,依次类推,支持cell行高自适应。。。一个不一样的思路

ios-购物车 两个tableView的联动 tableView和collectionView的联动.zip

购物车 两个tableView的联动 tableView和collectionView的联动

ios-轻松实现两个 TableView的联动.zip

由于TableView是最常用的控件,所以封装起来方便使用

iOS 抽屉效果 毛玻璃效果 下拉筐效果 高仿网易新闻

iOS 抽屉效果 毛玻璃效果 下拉筐效果 高仿网易新闻

iOS SwipeKit,帮你轻松实现滑动展开抽屉效果.zip

iOS SwipeKit,帮你轻松实现滑动展开抽屉效果。.zip,swipableuitableviewcell/uicollectionviewcell基于stock mail.app,在swift中实现。

这是一个很简单的抽屉栏效果

这是一个非常简单的抽屉栏效果的小demo 很容易可以嵌入你的项目中,

STM32 SAES硬件加密协处理器全模式工程实践指南

AES(高级加密标准)是嵌入式系统中最基础且关键的对称密码算法,其硬件加速实现直接影响安全、性能与功耗平衡。Secure AES Coprocessor(SAES)作为STMicroelectronics在STM32U5等高安全MCU中集成的专用密码协处理器,不仅支持标准ECB/CBC/CTR模式,更原生兼容GCM和CCM等认证加密模式,具备抗侧信道、密钥保护与DMA卸载能力。理解其寄存器状态机(CHMOD/MODE/CPHASE)、NPBLB数据对齐机制及GCM四阶段编程范式,是规避Tag校验失败、IV错

weixin_42311427的博客 77

Unity简单操作:PostProcessing的使用

Postprocessing是一个unity2018版本的集成后期插件,有了这个插件,之后用unity开发时,后期调整颜色、光晕等会很方便。 目录 新建一个postprocessing profile(配置文件)。​ 参数说明: 新建一个postprocessing profile(配置文件)。 在主相机下加一个组件PostProcess Layer。 注意:需要将相机的Layer层设置与Post Process Layer 下的Volume blending(体积混合)...

weixin_39114763的博客 7369

树莓派+STM32+激光雷达:大学生工训赛智能物流小车全栈开发实录(附避坑指南)

本文详细记录了基于树莓派、STM32和激光雷达的智能物流小车全栈开发过程。文章从系统架构设计、硬件集成、软件框架搭建到机械臂控制与视觉辅助定位,系统阐述了如何构建一个完整的机器人系统,并分享了在电源管理、通信延迟、里程计误差等关键环节的实战避坑指南,为嵌入式与机器人开发提供了宝贵经验。

kotlin6android的博客 748

GPU运维工程师入门指南 (第九篇): 高性能网络 - InfiniBand与RDMA技术

本文介绍了支撑AI分布式训练的高性能网络技术InfiniBand和RDMA。传统TCP/IP网络因内核开销和内存拷贝成为性能瓶颈,而InfiniBand提供高带宽、低延迟的专用网络,RDMA则通过内核旁路和零拷贝技术实现节点间内存直接访问,显著提升通信效率。特别介绍了GPUDirect RDMA技术,使GPU显存可直接通信。文章还列举了运维人员在部署这些技术时需要考虑的硬件、驱动、配置和监控等关键点。这些技术共同构成了支撑大规模AI集群的"数据高速公路",为后续讨论存储性能瓶颈奠定了基础

weixin_42587823的博客 1098

Linux 设置双网卡通信,外网网卡和内网网卡

背景,Linux 主机已经安装了内网、外网 2 张网卡,目前外网网络已通,需要设置内网网卡转发通内网 内网需要通信的设备的网段,如果 10.99.0.0 代表 10.99 网段的所有 IP 表示 10.xx 网段走 10.xx.xx.xx 这个网关转发 :内网网卡设备示例 2、设置启动自动生效 打开 文件,如果没有则创建该文件,然后在文件内写入如下的内容修改上面的语句 为 即可 示例...

简简单单Onlinezuozuo 6605

VN5620以太网测试——环境搭建篇

CANoe(CAN open environment)VN5620 :是一个紧凑而强大的接口,用于以太网网络的分析、仿真、测试和验证。VN5620 接口支持各种可能的应用。它适用于与其他总线系统、网络参与(例如在模拟和生成帧、测试中的负载和错误)的同步以太网监控。在2021年Vector公司的以太网接口卡VN5610和VN5640设备已经陆续停产,相应被VN5620和VN5650代替。

诊断协议那些事儿's blog 8935

使用ChatGPT工具阅读文献的实战教程

本文介绍核心内容为使用ChatGPT工具阅读文献,希望对学习和使用ChatGPT的同学们有所帮助。为了兼顾质量和速度,本专栏的更新频率为一周一到两更。 文章目录 1. 前言 2. 实战教程 2.1 下载工具并登录 2.2 提取文献中的关键信息

herosunly的博客 15万+

在Simulink中构建感应电机的时滞补偿控制模型,并通过仿真验证不同补偿策略的有效性

核心优势Smith预估器可有效补偿已知时滞,提升系统稳定性。动态PID调整适用于时变时滞的初步补偿。扩展方向自适应时滞估计:结合Luenberger观测器实时估计时滞。鲁棒控制:引入H∞控制或滑模控制抑制参数不确定性。网络化时滞补偿:结合知识库[2]的网络延迟模型,实现端到端补偿。

amy_mhd的博客 190

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

上一篇: ARM相关知识
下一篇: IOS飞机大战OC版
RannieR
博客等级 码龄14年 180粉丝 68原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值