枚举类型与字符串ConvertEnumToString
枚举类型与字符串添加字典互转ConvertEnumToString
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using Enums;
public class startScene : MonoBehaviour
{
//点击事件
public void startOnClick()
{
global_Mgr.EnterNextScenes(Scenes.MainMenuScene)
}
}
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using Enums;
public class global_Mgr
{
//定义全局静态变量
public static Scene NextScenesEnum = Scene.LoadScene;
//定义全局静态加载
public static void EnterNextScenes(Scenes scenesEnumName)
{
NextScenesEnum = scenesEnumName;
SceneManager.LoadScene(Config.ConvertEnumToStr(Scenes.LoadScene));
}
}
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
namespace Enums
{ //枚举场景类型命名
public enum Scenes
{
StartScene,
SubmenuScene,
LoadScene,
MainMenuScene
}
//定义字典枚举转字符串类
public class Config
{
//定义字典
public static Dictionary<Scenes, string> dictionary;
//方法类型转换、参数枚举场景名、返回值场景名称字符串
public static string ConvertEnumToStr(Scenes Scenes)
{
dictionary = new Dictionary<Scenes, string>();
dictionary.Add(Scenes.StartScene, "StartScene");
dictionary.Add(Scenes.SubmenuScene, "SubmenuScene");
dictionary.Add(Scenes.LoadScene, "LoadScene");
dictionary.Add(Scenes.MainMenuScene, "MainMenuScene");
if (!dictionary.ContainsKey(Scenes))
{
Debug.Log("error");
return null;
}
return dictionary[Scenes];
}
}
}
using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
using Enums;
//场景读条加载(详细备注前篇:LoadScene场景异步加载(2018-09-06 13:30))
public class Load : MonoBehaviour
{
public Slider Slider;
private AsyncOperation async;
private int number = 0;
private int num = 0;
private void Start()
{
Slider.value = 0;
StartCoroutine("start");
}
void Update()
{
Slider.value = number / 100f;
}
private IEnumerator start()
{
async = SceneManager.LoadSceneAsync(Config.ConvertEnumToStr(global_Mgr.NextScenesEnum));
async.allowSceneActivation = false;
while (async.progress < 0.9f)
{
num = (int)async.progress * 100;
while (number < num)
{
++number;
yield return new WaitForSeconds(0);
}
}
num = 100;
while (number < num)
{
++number;
yield return new WaitForSeconds(0);
}
async.allowSceneActivation = true;
}
}
注:在场景或关卡多时,运用较为方便,可一个加载场景在每个关卡使用,字典方法ConvertEnumToStr可根据场景,修改添加方便使用...
枚举类型与字符串ConvertEnumToString的更多相关文章
- QT枚举类型与字符串类型相互转换
在QT中将枚举类型注册(QT_Q_ENUM或QT_Q_FLAG)后,就可以利用QT的元对象进行枚举类型与字符串类型转换了. 代码示例: #include <QtCore/QMetaEnum> ...
- 【转】掌握java枚举类型(enum type)
原文网址:http://iaiai.iteye.com/blog/1843553 1 背景 在java语言中还没有引入枚举类型之前,表示枚举类型的常用模式是声明一组具有int常量.之前我们通常利用 ...
- Java的枚举类型使用方法详解
1.背景在java语言中还没有引入枚举类型之前,表示枚举类型的常用模式是声明一组具有int常量.之前我们通常利用public final static 方法定义的代码如下,分别用1 表示春天,2表示夏 ...
- { MySQL基础数据类型}一 介绍 二 数值类型 三 日期类型 四 字符串类型 五 枚举类型与集合类型
MySQL基础数据类型 阅读目录 一 介绍 二 数值类型 三 日期类型 四 字符串类型 五 枚举类型与集合类型 一 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己 ...
- C# 字符串转枚举类型
Enum.Parse(typeof(枚举类型), 字符串类型) 如:在Unity中, Enum.Parse(typeof(SystemLanguage), "Chinese")
- mysql字符串类型(枚举类型)
原文链接:https://blog.csdn.net/qq_34530405/article/details/81738907 本文记录MySql数据库中enum类型数据的使用细节和注意事项. 首先在 ...
- 在WPF中使用变通方法实现枚举类型的XAML绑定
问题缘起 WPF的分层结构为编程带来了极大便利,XAML绑定是其最主要的特征.在使用绑定的过程中,大家都普遍的发现枚举成员的绑定是个问题.一般来说,枚举绑定多出现于与ComboBox配合的情况,此时我 ...
- 窥探Swift之别样的枚举类型
想必写过程序的童鞋对枚举类型并不陌生吧,使用枚举类型的好处是多多的,在这儿就不做过多的赘述了.Fundation框架和UIKit中的枚举更是数不胜数,枚举可以使你的代码更易阅读并且可以提高可维护性.在 ...
- java 枚举类型知识点记录
在日常开发中,我们常用接口装常量或者在类里面写静态常量,java1.5以后加入了枚举类型enum.枚举类型是由一组固定的常量组成的类型.枚举本质是int值.因为枚举类型没有可以访问的构造器,所以枚举类 ...
随机推荐
- C# 真正完美的 汉字转拼音
网上有很多说自己整理的汉字转拼音是完美的,但使用后才发现都是半吊的瓶子,问题多多. 常见的生僻字,或多音字识别,转换后简直让人感觉可怕. 主流的转换有三种:hash匹配,Npinyin,微软PinYi ...
- 微信 oauth2 两次回调
场景: logger.Info("f: " + wx.From); logger.Info("c: " + wx.Code); logger.Info(&quo ...
- 三、SpringBoot-application.properties配置文件和application.yml配置文件
其实SpringBoot的配置文件有.properties和.yml两种形式,两种配置文件的效果类似,只不过是格式不同而已,孩儿们可以根据下面这几种张截图,通过对比端口号的配置,以及连接SQLServ ...
- Kotlin 区间和循环 Loop和Range
在kotln中有一种很简单的方式来表达某一个区间的数字. 比如我想存储1~100. 我在其他的语言中可以用数组,步骤大概有三个把. 但是在kotlin中就只需要一步. 代码如下: fun main(a ...
- SKU:唯一标识填什么
策略 随意填写 只要别和别人重复就好 ,不过重复你也创建不了. 最好填与APP信息相关的,比如直接填写bundle ID 上去...跟套装ID保持一致. 你新建应用的时候都还没有APP ID 你怎么填 ...
- NSRange 范围
前言 结构体,这个结构体用来表示事物的一个范围,通常是字符串里的字符范围或者集合里的元素范围. typedef struct _NSRange { NSUInteger location; // 表示 ...
- Spring Boot的每个模块包详解
Spring Boot的每个模块包详解,具体如下: 1.spring-boot-starter 这是Spring Boot的核心启动器,包含了自动配置.日志和YAML. 2.spring-boot-s ...
- Leetcode 25. Reverse Nodes in k-Group 以每组k个结点进行链表反转(链表)
Leetcode 25. Reverse Nodes in k-Group 以每组k个结点进行链表反转(链表) 题目描述 已知一个链表,每次对k个节点进行反转,最后返回反转后的链表 测试样例 Inpu ...
- Win7 如何阻止程序联网
https://jingyan.baidu.com/article/9113f81b03d4e12b3214c7c3.html
- js 事件的阶段
事件有三个阶段: 1.事件捕获阶段 :从外向内 2.事件目标阶段 :最开始选择的那个 3.事件冒泡阶段 : 从里向外 为元素绑定事件 addEventListener("没有on的事件类 ...