美文网首页
10 发现页面轮播图UI组件封装(Swift)

10 发现页面轮播图UI组件封装(Swift)

作者: flyfishcxy | 来源:发表于2023-06-20 12:38 被阅读0次

不知到大家在软件开发过程中,一般在App首页顶部view都显示轮播图广告,把最近点击率最好的活动放在首页吸引用户眼球,然后发起点击轮播图操作到对应的商品详情页,然后完成下单支付操作到订单过程。

那么话不多说,我们开始来详细描述发现页面轮播图UI组件开发实现过程:

1 从服务端发起请求获取网络动态轮播图返回的数据

在DiscoveryController发现VC里面创建loadData函数,并在loadData函数里面调用DefaultRepositroy的bannerAds轮播图网络请求函数,将服务端返回的结果存储BannerData数据模型里面。在initDataNum初始化函数调用loadData。

loadData函数获取轮播图数据

2 在发现列表创建BannerCell,在cell添加1个label测试

创建BaseTableViewCell 封装cell的初始化UI和数据绑定的方法和自动高度设置的方式

BaseTableViewCell

创建轮播图BannerCell继承BaseTableViewCell,并创建1个labe测试是否能添加在轮播图上

BannerCell

3 利用YJBannerView开源框架实现轮播图UI和Data的绑定

引入YJBannerView的源码到工程项目目录里面,设置轮播图BannerCell布局--container的内边距+比例尺+圆角+占位图+颜色,并添加绑定服务端数据的方法bind

YJBannerView初始化 YJBannerView代理函数实现

在发现VC数据源回调函数调用BannerCell

4 实现轮播图点击功能 -- 用block实现

定义1个BannerCell点击的block的回调函数bannerClick

实现YJBannerView的didSelectItemAt轮播图点击的回调函数

在发现DiscoveryController里面的tableview列表的 cellForRowAt函数实现cell的block回调函数

声明processAdClick轮播图函数并实现相应跳转H5网页预留接口

运行进行点击测试截图

5 运行模拟器测试看效果 

总结:

看着一个很小的轮播图组件其实背后隐藏着很深的交互行为,当然点击了不下单只是增加了用户埋点的数量,但是这样也能给用户提供相关的数据进行分析用的行为。

相关文章

  • 面向对象实战

    封装轮播组件 轮播 封装曝光加载组件 曝光加载 封装Tab 组件 Tab组件

  • 微信小程序常见组件的使用

    小程序组件介绍 组件是可复用的软件模块 组件是用来封装页面中某一部分功能的,例如:轮播图组件、底部tabBar组件...

  • 封装组件

    封装tab组件封装曝光加载组件封装轮播组件 代码

  • 面向对象实战

    1、tab组件封装2、轮播组件封装3、曝光组件封装

  • 组件

    题目1: 封装一个轮播组件轮播组件轮播组件2,使用IIFE 题目2: 封装一个曝光加载组件曝光加载组件 题目3: ...

  • swift 轮播图无限滚动 控件的封装

    swift 轮播图无限滚动 控件的封装 这篇文章主要记录自己是怎么一步一步封装一个 轮播图, 记录了整个过程和遇到...

  • 面向对象实战

    题目1: 封装一个轮播组件轮播组件题目2: 封装一个曝光加载组件曝光加载组件题目3: 封装一个 Tab 组件Tab 组件

  • 3面向对象实战

    参考:tab组件229曝光组件187轮播组件172轮播二次封装154 我的: 1: 封装一个轮播组件 http:/...

  • 封装(面向对象)

    题目1: 封装一个轮播组件 轮播封装 题目2: 封装一个曝光加载组件 曝光加载 题目3: 封装一个 Tab 组件 ...

  • 面向对象实战

    题目1: 封装一个轮播组件封装轮播组件(效果)代码题目2: 封装一个曝光加载组件封装曝光加载(效果)代码题目3: ...

网友评论

      本文标题:10 发现页面轮播图UI组件封装(Swift)

      本文链接:https://www.haomeiwen.com/subject/mnpyydtx.html