[置顶] unity游戏UI多个弹窗采用字典每次只显示一个
2017-03-16 21:14
537 查看
public class game : MonoBehaviour {
//三个弹窗
private string Sphere = "Sphere";
private string Capsule = "Capsule";
private string Cube = "Cube";
private Button Btn1;
private Button Btn2;
private Button Btn3;
private Dictionary<> dic = new Dictionary();
string tanchuang = "";
void Start ()
{
Find();
AddLinsten();
}
void Find()
{
Btn1 = GameObject.Find("GameObject").transform.FindChild("dating/Image/Button1").GetComponent
();
Btn2 = GameObject.Find("GameObject").transform.FindChild("dating/Image/Button2").GetComponent
();
Btn3 = GameObject.Find("GameObject").transform.FindChild("dating/Image/Button3").GetComponent
();
}
void AddLinsten()
{
Btn1.onClick.AddListener(btn1Click);
Btn2.onClick.AddListener(btn2Click);
Btn3.onClick.AddListener(btn3Click);
}
GameObject GetDic(string objname)
{
if (tanchuang != "" && dic.ContainsKey(tanchuang))
{
dic[tanchuang].SetActive(false);
}
GameObject creatobj;
if (dic.ContainsKey(objname))
{
creatobj = dic[objname];
}
else
{
creatobj = Instantiate(Resources.Load(objname));
creatobj.name = objname;
dic.Add(objname, creatobj);
}
tanchuang = objname;
creatobj.SetActive(true);
return creatobj;
}
void btn1Click()
{
GameObject obj = GetDic(Cube);
}
void btn2Click()
{
GameObject obj = GetDic(Capsule);
}
void btn3Click()
{
GameObject obj = GetDic(Sphere);
}
}
//三个弹窗
private string Sphere = "Sphere";
private string Capsule = "Capsule";
private string Cube = "Cube";
private Button Btn1;
private Button Btn2;
private Button Btn3;
private Dictionary<> dic = new Dictionary();
string tanchuang = "";
void Start ()
{
Find();
AddLinsten();
}
void Find()
{
Btn1 = GameObject.Find("GameObject").transform.FindChild("dating/Image/Button1").GetComponent
();
Btn2 = GameObject.Find("GameObject").transform.FindChild("dating/Image/Button2").GetComponent
();
Btn3 = GameObject.Find("GameObject").transform.FindChild("dating/Image/Button3").GetComponent
();
}
void AddLinsten()
{
Btn1.onClick.AddListener(btn1Click);
Btn2.onClick.AddListener(btn2Click);
Btn3.onClick.AddListener(btn3Click);
}
GameObject GetDic(string objname)
{
if (tanchuang != "" && dic.ContainsKey(tanchuang))
{
dic[tanchuang].SetActive(false);
}
GameObject creatobj;
if (dic.ContainsKey(objname))
{
creatobj = dic[objname];
}
else
{
creatobj = Instantiate(Resources.Load(objname));
creatobj.name = objname;
dic.Add(objname, creatobj);
}
tanchuang = objname;
creatobj.SetActive(true);
return creatobj;
}
void btn1Click()
{
GameObject obj = GetDic(Cube);
}
void btn2Click()
{
GameObject obj = GetDic(Capsule);
}
void btn3Click()
{
GameObject obj = GetDic(Sphere);
}
}
相关文章推荐
- [置顶] unity游戏UI多个弹窗采用列表每次只显示一个
- 自学Unity之做一个MOBA游戏3——血条显示
- Unity_2D游戏实例从零讲起(3)——基本菜单UI的实现
- Swift语言实战晋级-第9章 游戏实战-跑酷熊猫-3 显示一个动态的熊猫
- [置顶] Unity游戏开发Photon Server之服务端架构
- 一个基于Yahoo UI的Ajax俄罗斯方块游戏
- 【Unity&NGUI】两个摄像机重合,UI多次重复显示问题
- 只将unity的UI控件添加到iOS视图层上,不显示unity原生的背景(一)
- 内容列表时候有预览,每次显示一个(1/2)
- 这里先公布一个,自己写得unityUI的适配的方案(插播)
- 一个基于Yahoo UI的Ajax俄罗斯方块游戏
- 一个基于Yahoo UI的Ajax俄罗斯方块游戏
- 一个基于Yahoo UI的Ajax俄罗斯方块游戏
- 【Unity&NGUI】为什么把NGUI的UI制作为预制体,再生成到新场景,UI无法正常在Game视图显示
- 【Unity】查看与显示游戏帧数FPS
- 一个jQuery的弹窗显示后消失,
- 网易面试题之 牛牛拿到了一个藏宝图,顺着藏宝图的指示,牛牛发现了一个藏宝盒,藏宝盒上有一个机关,机关每次会显示两个字符串 s 和 t, * 根据古老的传说,牛牛需要每次都回答 t 是否是 s 的子序
- Android UI开发第十九篇——介绍一个开源的gifview——Android显示GIF动画
- unity中可以使一个私有的变量在Inspector面板中显示出来 和 SerializeField的使用
- Unity 4.3 制作一个2D横版射击游戏