当前位置: 首页 > news >正文

网软志成个人商城网站wordpress火车头发布接口

网软志成个人商城网站,wordpress火车头发布接口,临海网站制作好了如何上线,wordpress后台文章上传文章目录 前言MVC基本概念示例流程图效果预览后话 前言 在Unity中,MVC(Model-View-Controller)框架是一种架构模式,用于分离游戏的逻辑、数据和用户界面。MVC模式可以帮助开发者更好地管理代码结构,提高代码的可维护性…

文章目录

    • 前言
    • MVC基本概念
    • 示例
    • 流程图
    • 效果预览
    • 后话

前言

在Unity中,MVC(Model-View-Controller)框架是一种架构模式,用于分离游戏的逻辑、数据和用户界面。MVC模式可以帮助开发者更好地管理代码结构,提高代码的可维护性和可扩展性。

MVC基本概念

  1. Model(模型)
  • 职责:管理应用程序的数据逻辑和业务规则。它独立于视图和控制器,不直接处理用户输入。
  • 示例:游戏中的角色属性(如生命值、得分)、配置文件、数据持久化。
  1. View(视图)
  • 职责:负责用户界面的呈现和显示数据。它从模型获取数据,并显示给用户。
  • 示例:UI面板、按钮、文本框、动画展示。
  1. Controller(控制器)
  • 职责:处理用户输入,并将其转换为模型和视图的操作。它连接模型和视图,并控制它们之间的交互。
  • 示例:响应按钮点击、处理输入事件、调用模型的更新方法。

示例

先搭建个UI

  • PlayerModel.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;public class PlayerModel
{private int level;public int Level{get { return level; }}private int money;public int Money{get { return money; }}// 单例模式,确保数据唯一性private static PlayerModel instance;public static PlayerModel Instance{get{if (instance == null){instance = new PlayerModel();// 创建实例初始化instance.Init();}return instance;}}private event UnityAction<PlayerModel> updateEvent;public void Init(){// 初始化数据,一般在这里读取表配置啥的level = 1;money = 100;}public void LevelUp(){level++;SaveInfo();}public void AddMoney(int num){money += num;SaveInfo();}public void SaveInfo(){// 保存数据并更新Debug.Log("SaveInfo");UpdateInfo();}public void UpdateInfo(){// 更新数据的时候给Controller发通知updateEvent?.Invoke(this);}public void AddUpdateEvent(UnityAction<PlayerModel> action){updateEvent += action;}public void RemoveUpdateEvent(UnityAction<PlayerModel> action){updateEvent -= action;}
}
  • PlayerView.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class PlayerView : MonoBehaviour
{// 先绑定UIpublic Text levelText;public Text moneyText;public void UpdateView(PlayerModel playerModel){// View 负责显示数据,不负责逻辑levelText.text = playerModel.Level.ToString();moneyText.text = playerModel.Money.ToString();}
}
  • PlayerController.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class PlayerController : MonoBehaviour
{// 绑定Viewpublic PlayerView playerView;// 绑定Buttonpublic Button moneyBtn;public Button levelBtn;private void Start(){// 把View的更新方法绑到Model的通知列表里PlayerModel.Instance.AddUpdateEvent(playerView.UpdateView);// 绑定Button的点击事件levelBtn.onClick.AddListener(PlayerModel.Instance.LevelUp);moneyBtn.onClick.AddListener(PlayerModel.Instance.AddMoney);}
}
  • 绑定组件


流程图

效果预览


后话

通过这种分离模式,我们将数据处理、用户交互和显示逻辑分离开来,使得代码更易于管理和维护。后期可以根据需要扩展这些基本类,例如增加更多的 UI 元素或更复杂的交互逻辑。

enjoy it ~

http://www.yayakq.cn/news/653163/

相关文章:

  • 网站的颜色wordpress 4.8 中文版
  • 查询网站是否正规ui和平面设计的区别
  • 网站制作的总结与体会电子菜单小程序怎么做
  • 网站备案 前置审批文件凡科 wordpress
  • 微信网站与响应式网站有哪些女装子wordpress
  • 易搜网站建设微信推广营销
  • 西安做建站的公司wordpress文章回复
  • 承德很好的网络建站阳光城最新消息
  • 网站建设二公司系统维护15天正常吗
  • 南昌建设银行网站wordpress 视频播放
  • 西樵营销网站制作宣传片素材网站
  • 有经验的顺德网站建设做的网站怎才能被别人访问到
  • 公司网站改版方案网站设计公司哪家
  • 二手网站需求建设分析网站后台要求
  • 网站开发都有google移动网站建站十大原则
  • 东莞 建网站python做网站好处
  • 做多肽的都有哪些网站2022年一建考试最新消息
  • 邳州网站网站建设做网站需要会什么 知乎
  • 垣曲做网站wordpress传不上站点
  • 如何快速的制作h5页面安卓优化大师官方版
  • 建设鲜花网站前的市场分析昆明航空公司官方网站
  • 手机端网站怎么制作房产销售网站开发文档
  • 做精品课程网站需要啥素材深圳十大传媒公司排名
  • 怎么样做英文网站呼伦贝尔网站建设 设计
  • 网站站群管理系统物流网站建设平台分析
  • 乐清市网站建设php 开源的企业网站
  • 那家做网站好餐饮品牌全案策划公司
  • 淄博网站建设-中国互联建微信网站
  • 江苏建设厅网站电话多少恒佳企划网站建设
  • 优化网站公司价格是多少钱湖南网站seo找行者seo