一款颜值颇高的虚拟列表!差点就被埋没了,终于还是被我挖出来了

大家好,我是晓衡!

今天,推荐一款颇有颜值的虚拟列表组件,不然真的被埋没就可惜了!

我们先来看下效果:

02e6ca4fd17889a18e06375158b78c4e.gif

0846919b177341b390c0abada13438ea.gif

14b0fb4c341e4ca8d34e3a1e482fa6e4.gif
9c1727463a7a32af1ac52a68ff3da041.gif

感觉怎么样?还不错吧!

为什么说这个资源差点被埋没呢?因为个朋友找到晓衡询问,有没优化过的 ScrollView 能支持 grid 的?

很多人都知道,引擎自带的 ScrollView 功能有限,特别是新手,要将它玩转还真的不太容易。可能用跑是跑起来了,但那体验却是各种糟心,很容易被老板、用户骂娘。

这位朋友问对人了,因为上周我才在 Cocos Store 上发现上面这个虚拟列表(XY),体验了一下效果很是 nice!

我立即在Store上一搜过起来,居然没找出来。

我连续使用了ScrollViewViewScroll 这三个搜索词都不行。

可我当时一下子记不得它叫什么名字了,只好打开资源列表,一页一页地翻。

我硬是找了五六分钟才找到,还好我记得它的图标,有点带治愈卡通风格,很容易识别。d38c1d3b280e1b42364196128d42d938.png

不过,这里需要提醒大家,一定要善用 Cocos Store 后台商品编辑中的关键字功能,看下面这张图:5ea5f2e333f61d559ddee70a5d3b1da2.png

其实作者还是有心的,写有这么多关键词,可唯独少了ScrollView。用户也可以根据应用场景,多尝试几个关键词。

下面,我们再来看看这款 ScrollView 虚拟列表到底有些什么不同?

功能特点

首先要赞一下虚拟列表(XY)支持2.x\3.x引擎,以下是主要功能点:

  • 支持分页模式

  • 支持动态节点大小

  • 支持瀑布流布局

  • 支持同列表下多种节点类型

  • 支持分区布局模式

  • 支持列表嵌套

  • 支持旋转木马布局样式

  • 提供 3D 画廊布局思路

  • 业务清晰,高度可扩展性,注释详细,彻底搞懂工作原理

  • 自定义: 布局业务完全分离,支持自定义列表的布局排列方式

  • 自定义: 提供实时修改节点变换的方法,目前支持实时调整自定义节点的 偏移缩放旋转层级透明度

使用方法

下面是作者提供的使用方法步骤:

  • 创建一个新节点

  • 给节点挂载 YXCollectionView 组件

  • 确定列表内一共需要展示多少条内容

    this.collectionView.numberOfItems = () => this.testData.length
  • 通过 YXCollectionView 组件注册列表上需要显示的节点,可多次注册,支持同列表不同类型的节点,确保 identifier 唯一就好

    this.collectionView.register(`custom identifier`, () => instantiate(this.cellPrefab))
  • 根据实际数据,返回对应的已经注册过的节点,可通过 indexPath 区分数据

    this.collectionView.cellForItemAt = (indexPath, collectionView) => {
        return collectionView.dequeueReusableCell(`custom identifier`)
    }
  • 更新节点内容

    this.collectionView.onCellDisplay = (cell, indexPath, collectionView) => {
        let rowData = this.testData[indexPath.item]
        cell.getChildByName(`Label`).getComponent(Label).string = `${rowData.value}`
    }
  • 根据实际布局情况,配置一个合适的 YXLayout 布局对象

    let layout = new YXFlowLayout()
    layout.scrollDirection = YXFlowLayout.ScrollDirection.VERTICAL
    layout.itemSize = new math.Size(600, 200)
    layout.verticalSpacing = 20
    this.collectionView.layout = layout
  • 刷新列表

    this.collectionView.reloadData()

在线体验

说了这么多,最好还是自己去体验感受一下!

120087becacbbcc3c65b9f2949dc05d2.png

Cocos Creator 2.4.13 在线演示项目

  • https://568071718.github.io/cocos-creator-build/collection-view/2.4.13

Cocos Creator 3.8.0 在线演示项目

  • https://568071718.github.io/cocos-creator-build/collection-view/3.8.0

作者Cocos论坛技术帖

  • https://forum.cocos.org/t/topic/157984

Cocos Store下载地址:

  • https://store.cocos.com/app/detail/6249

今天的分享就到这里,晓衡的愿景是帮助1000名开发者,独立挣钱10W+。如果你有Cocos Creator的游戏、工具、教程分享,欢迎加我微信!

51502f0b96d954ae0b081b287e63879b.jpeg

3d6d76cd2a8e27c7dcc0e3cbc9d5a9be.png

472ad2030b640a24d70db3d7d92411d7.gif

ChatGPT-4o来了!使用WildCard一分钟极速体验

关不住啊!最新6个爆款小游戏源码上新!

微信小游戏分包最佳实践

微信畅玩榜我发现暗藏的几个惊天大秘!

500+免费CC0游戏模型素材点击领取!

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现
C语言是一种广泛使用的编程语言,它具有效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。下面详细介绍C语言的基本概念和语法。 1. 变量和数据类型 在C语言中,变量用于存储数据,数据类型用于定义变量的类型和范围。C语言支持多种数据类型,包括基本数据类型(如int、float、char等)和复合数据类型(如结构体、联合等)。 2. 运算符 C语言中常用的运算符包括算术运算符(如+、、、/等)、关系运算符(如==、!=、、=、<、<=等)、逻辑运算符(如&&、||、!等)。此外,还有位运算符(如&、|、^等)和指针运算符(如、等)。 3. 控制结构 C语言中常用的控制结构包括if语句、循环语句(如for、while等)和switch语句。通过这些控制结构,可以实现程序的分支、循环和多路选择等功能。 4. 函数 函数是C语言中用于封装代码的单元,可以实现代码的复用和模块化。C语言中定义函数使用关键字“void”或返回值类型(如int、float等),并通过“{”和“}”括起来的代码块来实现函数的功能。 5. 指针 指针是C语言中用于存储变量地址的变量。通过指针,可以实现对内存的间接访问和修改。C语言中定义指针使用星号()符号,指向数组、字符串和结构体等数据结构时,还需要注意数组名和字符串常量的特殊性质。 6. 数组和字符串 数组是C语言中用于存储同类型数据的结构,可以通过索引访问和修改数组中的元素。字符串是C语言中用于存储文本数据的特殊类型,通常以字符串常量的形式出现,用双引号("...")括起来,末尾自动添加'\0'字符。 7. 结构体和联合 结构体和联合是C语言中用于存储不同类型数据的复合数据类型。结构体由多个成员组成,每个成员可以是不同的数据类型;联合由多个变量组成,它们共用同一块内存空间。通过结构体和联合,可以实现数据的封装和抽象。 8. 文件操作 C语言中通过文件操作函数(如fopen、fclose、fread、fwrite等)实现对文件的读写操作。文件操作函数通常返回文件指针,用于表示打开的文件。通过文件指针,可以进行文件的定位、读写等操作。 总之,C语言是一种功能强大、灵活效的编程语言,广泛应用于各种领域。掌握C语言的基本语法和数据结构,可以为编程学习和实践打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值