Unity学习之Unity中的MVC思想

文章目录

  • 1 前言
  • 2 MVC的基本概念
  • 3 不使用MVC思想制作UI逻辑
    • 3.1 拼面板
    • 3.2 面板脚本
    • 3.3 角色面板逻辑
    • 3.4 角色升级
  • 4 使用MVC思想制作UI逻辑
    • 4.1 Model数据脚本
    • 4.2 View界面脚本
      • 4.2.1 MainView主界面
      • 4.2.2 RoleView 角色面板界面
    • 4.3 Controller业务逻辑脚本
      • 4.3.1 MainController
      • 4.3.2 RoleController


1 前言

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

2 MVC的基本概念

在这里插入图片描述
模型 —— 数据
视图 —— 用户界面UI
控制器 —— 用户交互的业务逻辑

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

3 不使用MVC思想制作UI逻辑

3.1 拼面板

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

3.2 面板脚本

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

提供函数给外部进行UI的显示和隐藏
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3.3 角色面板逻辑

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
显示和隐藏函数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.4 角色升级

在这里插入图片描述

4 使用MVC思想制作UI逻辑

4.1 Model数据脚本

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

在这里插入图片描述
使用事件 传出自己的数据通知外部更新
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在保存数据时进行更新
在这里插入图片描述
构建单例模式
在这里插入图片描述
给数据声明公共属性,防止外部更改
在这里插入图片描述

4.2 View界面脚本

在这里插入图片描述

4.2.1 MainView主界面

在这里插入图片描述
提供方法 更改显示的信息
在这里插入图片描述

4.2.2 RoleView 角色面板界面

在这里插入图片描述

在这里插入图片描述

4.3 Controller业务逻辑脚本

4.3.1 MainController

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

在这里插入图片描述
在这里插入图片描述
初始化时进行数据更新同步
并给事件进行添加
在这里插入图片描述
在这里插入图片描述

4.3.2 RoleController

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第一次更新面板,给model增加 新事件监听
在这里插入图片描述
在这里插入图片描述

点击按钮显示角色面板
在这里插入图片描述
关闭流程

在这里插入图片描述
点击升级按钮
在这里插入图片描述
实现数据改变后更新数据
给事件添加函数
在这里插入图片描述
在这里插入图片描述

记得移除事件
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/263986.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用openai-whisper实现语音转文字

使用openai-whisper实现语音转文字 1 安装依赖 1.1 Windows下安装ffmpeg FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。 # ffmpeg官网 https://ffm…

2024年2月20日v1.0.5更新·优雅草便民工具youyacao-tools

2024年2月20日v1.0.5更新优雅草便民工具youyacao-tools apk下载 https://fenfacun.youyacao.com/tools105.apk 介绍 优雅草便民工具是一款由成都市一颗优雅草科技有限公司打造的便民查询公益工具,2024年1月17日正式发布v1.0.0版本,本工具为了方便大众免…

互联网加竞赛 机器视觉opencv答题卡识别系统

0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 答题卡识别系统 - opencv python 图像识别 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! 🥇学长这里给一个题目综合评分(每项满分5分…

力扣● 343. 整数拆分 ● 96.不同的二叉搜索树

● 343. 整数拆分 想不到,要勇于看题解。 关键在于理解递推公式。 1、DP数组及其下标的含义:dp[i]是分解i这个数得到的最大的乘积。 2、DP数组如何初始化:dp[0]和dp[1]都没意义,所以直接不赋值,初始化dp[2]1即可。…

golang通过http访问外部网址

不同项目之前,通过http访问,进行数据沟通 先设定一个接口,确认外部能访问到 PHP写一个接口 public function ceshi_return() {$data $this->request->param();$id $data[id];$res Db::name(user)->field(id,status,price,name)->where([id>$id])->find…

【大数据】Flink SQL 语法篇(四):Group 聚合

Flink SQL 语法篇(四):Group 聚合 1.基础概念2.窗口聚合和 Group 聚合3.SQL 语义4.Group 聚合支持 Grouping sets、Rollup、Cube 1.基础概念 Group 聚合定义(支持 Batch / Streaming 任务):Flink 也支持 G…

深度神经网络中的计算和内存带宽

深度神经网络中的计算和内存带宽 文章目录 深度神经网络中的计算和内存带宽来源原理介绍分析1:线性层分析2:卷积层分析3:循环层总结 来源 相关知识来源于这里。 原理介绍 Memory bandwidth and data re-use in deep neural network computat…

S32 Design Studio PE工具配置UART

配置操作 先得配置下GPIO用的是哪个引脚 跟之前的外设一样,它这里有两个UART可以用。 这里只能用UART0和2的原因是UART1被LIN使用了。 配置的内容为 生成代码对应 首先会根据components名称创建个驱动状态结构体 /*! Driver state structure */ lpuart_state_t …

程序媛的mac修炼手册-- 2024如何彻底卸载Python

啊,前段时间因为想尝试chatgpt的API,需要先创建一个python虚拟环境来安装OpenAI Python library. 结果,不出意外的出意外了,安装好OpenAI Python library后,因为身份认证问题,根本就没有获取API key的权限…

stable diffusion学习笔记 手部修复

图片手部修复原理 某张图片在生成后,仅有手部表现不符合预期(多指,畸形等)。这种情况下我们通常使用【局部重绘】的方式对该图片的手部进行【图生图】操作,重新绘制手部区域。 但是仅采用重绘的方式也很难保证生成的…

试卷打印如何去除答案?3个方法一键还原

试卷打印如何去除答案?在日常学习中,在打印试卷时,去除答案是一个常见的需求,特别是在学生复习或老师准备教学材料时。答案的存在可能会干扰学生的学习过程,或者使得试卷的重复使用变得困难。为了解决这个问题&#xf…

JWT学习笔记

了解 JWT Token 释义及使用 | Authing 文档 JSON Web Token Introduction - jwt.io JSON Web Token (JWT,RFC 7519 (opens new window)),是为了在网络应用环境间传递声明而执行的一种基于 JSON 的开放标准((RFC 7519)。该 token 被设计为紧凑…

Another Redis Desktop Manager工具连接集群

背景:使用Another Redis Desktop Manager连接redsi集群 win10安装 使用 下载 某盘: 链接:https://pan.baidu.com/s/1dg9kPm9Av8-bbpDfDg9DsA 提取码:t1sm 使用

[c++] char * 和 std::string

1 char * 和 std::string 的区别 char * 字符串是常量字符串,不能修改;std::string 指向的字符串可以修改 实例代码如下图所示,s1 和 s2 均是常量字符串,字符串常量保存在只读数据区,是只读的,不能写&…

接口自动化测试用例如何设计

说到自动化测试,或者说接口自动化测试,多数人的第一反应是该用什么工具,比如:Python Requests、Java HttpClient、Apifox、MeterSphere、自研的自动化平台等。大家似乎更关注的是哪个工具更优秀,甚至出现“ 做平台的 &…

kafka生产者2

1.数据可靠 • 0:生产者发送过来的数据,不需要等数据落盘应答。 风险:leader挂了之后,follower还没有收到消息。。。。 • 1:生产者发送过来的数据,Leader收到数据后应答。 风险:leader应答…

Pyglet综合应用|推箱子游戏地图编辑器之图片跟随鼠标

目录 推箱子游戏 升级一:鼠标操作 升级二:增加网格 升级三:模拟按钮 综合应用:地图编辑器 关卡地图洗数 推箱子游戏 本篇为之前写的博客《Pyglet综合应用|推箱子游戏之关卡图片载入内存》的续篇,内容…

剪辑视频调色怎么让画质变得清晰 视频剪辑调色技巧有哪些方面 剪辑视频免费的软件有哪些 会声会影调色在哪里 会声会影模板素材

视频调色的作用有很多,除了进行风格化剪辑以外,还可以让作品的画质变得清晰。通过调色来增强画面的清晰度,在观感上也会显得十分自然。视频调色的技巧有很多,并且原理大都十分简单。有关剪辑视频调色怎么让画质变得清晰&#xff0…

Linux之部署前后端分离项目

Nginx配置安装 1.安装依赖 我们这里安装的依赖是有4个的 [rootlocalhost opt]# yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel 2.上传解压安装包 [rootlocalhost opt]# tar -xvf nginx-1.13.7.tar.gz -C /usr/local/java/3.安装Nginx &#xff0…

[C++]使用C++部署yolov9的tensorrt模型进行目标检测

部署YOLOv9的TensorRT模型进行目标检测是一个涉及多个步骤的过程,主要包括准备环境、模型转换、编写代码和模型推理。 首先,确保你的开发环境已安装了NVIDIA的TensorRT。TensorRT是一个用于高效推理的SDK,它能对TensorFlow、PyTorch等框架训…