[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用]

这篇具有很好参考价值的文章主要介绍了[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用]。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Unity5星资产EnhancedScroller的快速使用(一)

EnhancedScroller v2.21.4 简单使用

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

EnhancedScroller是什么?

EnhancedScroller
想用快速和便于移动设备的方法来展示大量数据吗?

EnhancedScroller 将你的数据虚拟化,只显示出所需元素。将数以千计的行数带到几个 UI 元素中来显示,加速处理并节省内存。对象不会被破坏,因此你的平台不需对垃圾进行收集。最好的是,它能在 Unity 内置 UI 系统组件上使用。

列表是数据驱动和动态创建的,因此在设计时不必设置它们。滚动器不需意识到数据或或视图展示,只需专注于管理你的列表来实现真正的 MVC 体验。可选的循环允许你显示无限的数据列表。每个单元都能拥有自己的尺寸或都使用一个尺寸。可选的对齐功能让你将单元锁定到特定位置。补间功能简化了跳跃和对齐的过渡,带来平滑的用户体验。

功能:

  • 动态、数据驱动列表
  • MVC 框架,来保持必要的分离
  • 高效回收列表项目
  • 可选的无限循环
  • 支持多列表项目大小或全局大小
  • 列表项目完全可自定义来满足你的项目需求
  • 可选的对齐功能来锁定你的滚动器
  • 补间功能来简化跳跃和对齐
  • 演示、教程和 完整 C# 代码都包含在内。
    enhancedscroller
    官网demo
    unity-assetstore

1.处理UI

1.1 加入Canvas

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

1.2 Canvas/Scroller --> 空对象

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

1.3 Scroller加入组件 EnhancedScroller

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

1.4 拖拽Scroller

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

1.5 Scroller/GameObject --> 拖拽到Scroller组件ScrollRect下的Content中\

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

1.6 Scroller Controller --> 空对象

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

2.处理CSharp

2.1 建立脚本 AnimalCellView.cs //继承 EnhancedScrollerCellView。处理数据的布局和格式以及显示数据

using EnhancedUI.EnhancedScroller;
using UnityEngine.UI;

public class AnimalCellView : EnhancedScrollerCellView
{
          public Text animalNameText;

          public void SetData(ScrollerData data)  //设置Prefab UI的数据,例如Text、Image
          {
                    animalNameText.text = data.animalName;
          }
}

2.2 建立脚本 ScrollerController.cs //继承 MonoBehaviour, IEnhancedScrollerDelegate。

using System.Collections;
using System.Collections.Generic;
using EnhancedUI.EnhancedScroller;
using UnityEngine;

public class ScrollerController : MonoBehaviour, IEnhancedScrollerDelegate
{
          private List<ScrollerData> _data;
          public EnhancedScroller myScroller;
          public AnimalCellView animalCellViewPrefab;

          void Start()
          {
                    _data = new List<ScrollerData>();
                    _data.Add(new ScrollerData() { animalName = "Lion" });
                    _data.Add(new ScrollerData() { animalName = "Bear" });
                    _data.Add(new ScrollerData() { animalName = "Eagle" });
                    _data.Add(new ScrollerData() { animalName = "Dolphin" });
                    _data.Add(new ScrollerData() { animalName = "Ant" });
                    _data.Add(new ScrollerData() { animalName = "Cat" });
                    _data.Add(new ScrollerData() { animalName = "Sparrow" });
                    _data.Add(new ScrollerData() { animalName = "Dog" });
                    _data.Add(new ScrollerData() { animalName = "Spider" });
                    _data.Add(new ScrollerData() { animalName = "Elephant" });
                    _data.Add(new ScrollerData() { animalName = "Falcon" });
                    _data.Add(new ScrollerData() { animalName = "Mouse" });

                    myScroller.Delegate = this;   //必须有这个
                    myScroller.ReloadData();     //加载数据到Item

          }


          public int GetNumberOfCells(EnhancedScroller scroller)
          {
                    return _data.Count;  //返回Item的数量。
          }

          public float GetCellViewSize(EnhancedScroller scroller, int dataIndex)
          {
                    return 100f;   //返回每个cell单元格的大小。如果横向滚动,这个数值指的是宽度;如果是竖向滚动,这个数值指的是高度。
          }

          public EnhancedScrollerCellView GetCellView(EnhancedScroller scroller, int dataIndex, int cellIndex)
          {
                    AnimalCellView cellView = scroller.GetCellView(animalCellViewPrefab) as AnimalCellView;  //生成GameObject,

                    cellView.SetData(_data[dataIndex]);           //设置Item的数据

                    return cellView; //设置好Prefab的EnhancedScrollerCellView 的数据,然后返回数据设置完成的EnhancedScrollerCellView
          }
}

2.3 建立脚本 ScrollerData.cs //列表数据,每个Item的数据

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ScrollerData
{
          public string animalName;
}

3.处理UI->Item

3.1建立Cell View单元格Prefab 在GameObject下建立一个Panel

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

3.2将建立的脚本AnimalCellView.cs附加给这个Panel

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

3.3设置Cell Identifier。每个Prefab的 Cell Identifier是唯一的。

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

4.建立Scroller控制器

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

4.1点击ScrollerController对象,将ScrollerController.cs

4.2设置好对应的对象拖进ScrollerController

5.效果

[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎

6.github && enhancedscroller v2.x下載

github
[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用],[Unity],unity,游戏引擎文章来源地址https://www.toymoban.com/news/detail-546162.html

到了这里,关于[Unity实战]EnhancedScroller v2.21.4简单使用[开箱可用]的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity3D与iOS的交互 简单版开箱即用

    本文适合的情况如下: Unity客户端人员 与 IOS端研发人员合作的情况 目录 From U3D to iOS 实现原理 1.unity工程目录创建2个文件 NativeCallProxy.m、NativeCallProxy.h 并且放到Unity工程目录Plugins/iOS/unity_ios_plus目录下 2.创建C#调用脚本 定义对应.mm脚本的 调用接口,调用也如下 实现原理 由

    2024年02月06日
    浏览(42)
  • ConvNeXt V2实战:使用ConvNeXt V2实现图像分类任务(一)

    论文:https://arxiv.org/pdf/2301.00808.pdf 论文翻译:https://wanghao.blog.csdn.net/article/details/128541957 官方源码: https://github.com/facebookresearch/ConvNeXt-V2 当前的主干网络几乎是Transformers的时代,ConvNeXt为数不多的的高性能CNN网络,V1版本就证明了其强大的存在,在V2版本中,作者提出了一个全

    2024年02月02日
    浏览(33)
  • 本地训练,开箱可用,Bert-VITS2 V2.0.2版本本地基于现有数据集训练(原神刻晴)

    按照固有思维方式,深度学习的训练环节应该在云端,毕竟本地硬件条件有限。但事实上,在语音识别和自然语言处理层面,即使相对较少的数据量也可以训练出高性能的模型,对于预算有限的同学们来说,也没必要花冤枉钱上“云端”了,本次我们来演示如何在本地训练

    2024年02月05日
    浏览(47)
  • ST-LINK v2下载器简单使用

    下载器类型有很多种,现在看到比较多的朋友都是使用STlink了,所以我也购买了ST LINK v2下载器进行学习使用。后来使用才发现这个下载器的功能特别强大,可以下载程序、调试程序、读取芯片数据,解除芯片读写保护等等,辅助软件用的是STM32 ST-LINK Utility。 第一步:将ST-l

    2023年04月12日
    浏览(34)
  • kubespray v2.21.0 部署 kubernetes v1.24.0 集群

    Kubespray 是 Kubernetes incubator 中的项目,目标是提供 Production Ready Kubernetes 部署方案,该项目基础是通过 Ansible Playbook 来定义系统与 Kubernetes 集群部署的任务,具有以下几个特点: 可以部署在 AWS, GCE, Azure, OpenStack 以及裸机上. 部署 High Available Kubernetes 集群. 可组合性 (Composable),

    2023年04月12日
    浏览(34)
  • Kubespray-offline v2.21.0-1 下载 Kubespray v2.22.1 离线部署 kubernetes v1.25.6

    本篇将说明如何通过 Kubespray 部署 Kubernetes 至裸机节点,安装版本如下所示: rocky linux 8.8 Kubernetes v1.25.6 kubespray v2.21.0-1 系统: rocky linux 8.8 192.168.23.30-rocky-8.8-bastion01 bastion01 (这里下载介质与部署节点为同一节点,如果非同一节点,需要介质下载搬运) 192.168.23.30(联网下载介质

    2024年02月14日
    浏览(46)
  • kubespray v2.21.0 在线部署 kubernetes v1.24.0 集群【2】

    上一篇专门为了练习部署跑通。这篇为了学习定制安装部署,以及新增节点,删除节点,升级节点,动态申请pv,监控等一些部署测试, github:https://github.com/kubernetes-sigs/kubespray 官网:https://kubespray.io/#/ 网友kubespray 学习:https://github.com/wenwenxiong/book/tree/master/k8s/kubespray 下载

    2023年04月18日
    浏览(59)
  • Kubespray v2.21.0 离线部署 Kubernetes v1.25.6 集群

    Kubespray 是 Kubernetes incubator 中的项目,目标是提供 Production Ready Kubernetes 部署方案,该项目基础是通过 Ansible Playbook 来定义系统与 Kubernetes 集群部署的任务,具有以下几个特点: 可以部署在 AWS, GCE, Azure, OpenStack 以及裸机上. 部署 High Available Kubernetes 集群. 可组合性 (Composable),

    2024年02月09日
    浏览(41)
  • 【Unity实战】实现一款简单的FPS游戏

    实现一款FPS游戏需要以下步骤: 1.创建场景:在Unity中创建3D场景,设定地形、灯光、天气等环境,新增角色、武器等道具。 2.角色控制:创建角色,并添加Unity内置的角色控制器或自定义控制器脚本,处理角色的移动、射击、跳跃、动作等。 3.武器系统:创建武器模型,添加

    2024年02月06日
    浏览(35)
  • 手边酒店V2独立版小程序 1.0.21 免授权+小程序前端安装教程

    手边酒店小程序独立版酒店宾馆订房系统支持创建多个小程序,让每一个客户单独管理属于自己的小程序。系统无需授权,小程序端用户授权也是采用最新接口。 缺点不开源不影响使用,播播资源安装测试下来未发现或出现BUG情况,用户授权接口小程序基础库选择2.30以上即

    2024年02月07日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包