枚举类型与字符串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值.因为枚举类型没有可以访问的构造器,所以枚举类 ...
随机推荐
- jQuery 隐藏和显示
jQuery 隐藏和显示 通过 hide() 和 show() 两个函数,jQuery 支持对 HTML 元素的隐藏和显示: 实例 $("#hide").click(functio ...
- (转)使用Jquery+EasyUI 进行框架项目开发案例讲解之四---组织机构管理源码分享
原文地址:http://www.cnblogs.com/huyong/p/3404647.html 在上三篇文章 <使用Jquery+EasyUI进行框架项目开发案例讲解之一---员工管理源码 ...
- 为docker设置国内镜像
docker的默认镜像(https://hub.docker.com/)地址,拉取镜像时是比较慢的,经常会超时,有时拉取几个小时.为了加快拉取的时间和速度,需要添加中国的镜像地址: 国内的加速地址: ...
- 编写高质量代码改善C#程序的157个建议——建议32:总是优先考虑泛型
建议32:总是优先考虑泛型 泛型的优点是多方面的,无论泛型类还是泛型方法都同时具备可重用性.类型安全性和高效率等特性,这是非泛型和非泛型方法无法具备的. 以可重用性为例: class MyList { ...
- 福大软工1816|K班—alpha冲刺
Part.1 开篇 队名:彳艮彳亍团队 组长博客:戳我进入 作业博客:班级博客本次作业的链接 Part.2 成员汇报 组员1(组长)柯奇豪 过去两天完成了哪些任务 了解前端方面的相关内容,便于后续对进 ...
- LibreOJ 6280 数列分块入门 4(分块区间加区间求和)
题解:分块的区间求和比起线段树来说实在是太好写了(当然,复杂度也高)但这也是没办法的事情嘛.总之50000的数据跑了75ms左右还是挺优越的. 比起单点询问来说,区间询问和也没有复杂多少,多开一个su ...
- android IntentService和ResultReceiver的异步处理
IntentService和ResultReceiver的异步处理 1.在下载手机上从网络下载东西的时候会用到AsyncTask来方便处理,这里可以在用IntentService和ResultRece ...
- sqlServer2008技术内幕笔记总结(实用的sql方法总结)
over函数的使用: 1.可以实现基于什么求和,省去group by: select xingming,xingbie,COUNT(*) over() as '总人数' from jbxx_xuesh ...
- VSCode提示pylint isnot installed
1.下载所需扩展 在https://www.lfd.uci.edu/~gohlke/pythonlibs/中下载所需扩展,我下载的是:pylint-2.1.1-py2.py3-none-any.whl ...
- 洛谷P3711 仓鼠的数学题(伯努利数+多项式求逆)
题面 传送门 题解 如果您不知道伯努利数是什么可以去看看这篇文章 首先我们把自然数幂和化成伯努利数的形式 \[\sum_{i=1}^{n-1}i^k={1\over k+1}\sum_{i=0}^k{ ...