这边数据上不来是因为PlayerPrefsMemory中GetString()方法没有被调用,需要在IDataMemory中配置GetString接口,并在DataMgr中做接口转接后,在PropertyItem中将对应Text赋值语句的DataMgr.Single.Get<string>(key)改为DataMgr.Single.GetString(key)
这边数据上不来是因为PlayerPrefsMemory中GetString()方法没有被调用,需要在IDataMemory中配置GetString接口,并在DataMgr中做接口转接后,在PropertyItem中将对应Text赋值语句的DataMgr.Single.Get<string>(key)改为DataMgr.Single.GetString(key)
foreach(Transform trans in transfrom)
trans是遍历transfrom所有的子物体,不包括自身
索引器
this关键字
//索引器就是一种特殊的属性 实例属性
//索引器不允许 static
//索引器允许重载
链式编程
1 单例模式 只允许创建一个对象,因此节省内存,加快对象访问速度,因此对象需要被公用的场合适合使用,如多个模块使用同一个数据源连接对象等等
2 单例的缺点 就是不适用于变化的对象,如果同一类型的对象总是要在不同的用例场景发生变化,单例就会引起数据的错误,不能保存彼此的状态。
用单例模式,就是在适用其优点的状态下使用
‘’自动挂载脚本的方式:
1.通过类型名挂载脚本
预制体名称和脚本名称需为一致;
[SerializeField ] 可序列化
获取类型转换器:
Type type=typeof(T)
var converter =TypeDescriptor.GetConverter(type);
1、一点想法
2、核心玩法
3、搭建demo评估
开发流程:
1、
前七堂课都是讲概念,第八堂课开始实作
基本观念Canvas 一致然后设置成800 1280
添加脚本在scripts Name LaunchGame
请记得抓档案分支One的
然后载入开启场景即可
一半的时间都在检讨学生而不是教程内容
你只要看标题即可,重点就是标题无实作
这个世界上最不缺的就是NB的想法
游戏大厂能把小团队给抄死
换皮
一个游戏换十几套UI
UI是最常变幻的东西
主界面 bg+button
确定分辨率 为了以后做适配
800*1280
canvas
screen space overlay
Scale with Screen size
挂脚本的方式:
1、手动挂到预制体上
2、动态挂脚本
保存预制体和脚本的对应关系
Config配置
3、通过预制体的名字反射出脚本的Type对象
4、自己写特性
挂载的脚本的名称必须和预制体的名称相同。