Unity3d制作一个简单的打开保存对话框-按钮2
2015-05-30 00:12
573 查看
上次我们提到创建控制整个面板的UIFindDirectory的脚本,我们依然还是先从功能分析起来。在整个UI面板当中,最重要的是打开或者保存文件这样的按钮,因此我们先从这几个按钮需要实现的这些功能做起。因此我们需要再创建一个UIDirectoryButton的脚本,我们首先要确定所有按钮的类型。每个类型按钮将会对应不同的按钮激发的函数。同时我们设置Action这个特殊的按钮类型,将该类型和EventFunction结合可以满足未来我们的打开、保存不同的需求功能的扩展。
using UnityEngine; using System.Collections; public class UIDirectoryButton : MonoBehaviour { #region 枚举按钮类型 public enum DirectoryButtonType { BACK, //返回上一级 OPEN, //打开目录 ACTION //选择相应事件 } #endregion #region 公共变量 //当前按钮的类型 public DirectoryButtonType CurrentButtonType=DirectoryButtonType.BACK; //当前响应事件 [HideInInspector] public string EventFunction; #endregion #region 公共方法 /// <summary> /// 点击选中条目 /// </summary> public void ClickItem() { //根据当前按钮的类型进行判别 switch (CurrentButtonType) { case DirectoryButtonType.BACK: BackClick(); break; case DirectoryButtonType.OPEN: OpenClick(); break; case DirectoryButtonType.ACTION: ActionClick(); break; } } #endregion #region 私有方法 /// <summary> /// 返回上级目录按钮 /// </summary> private void BackClick() { try { //获取父级的路径TODO //对父级下的内容搜索 } catch(UnityException e ) { } } /// <summary> /// 打开当前选择目录按钮 /// </summary> private void OpenClick() { try { //获取点击的文件夹的目录路径TODO //搜索 } catch(UnityException e) { } } /// <summary> /// 选择按钮点击 /// </summary> private void ActionClick() { if(EventFunction==""||EventFunction==null) { NGUIDebug.Log("当前无事件"); return; } //发出激活事件,调用该事件对应的函数TODO } #endregion }下一篇我们继续围绕着UI部分进行扩充
相关文章推荐
- unity3d 在shader中创建及使用Texture3D
- unity3d 协程Coroutines
- Unity 编辑器下控制粒子播放跟随位移
- unity资源打包研究
- Unity3D学习技巧
- Unity5.x Mac 破解流程
- Unity3D之Editor扩展学习——四大名捕闹京东
- 一、Unity3D 5.0.1-示例项目“汽车游戏”的展示及开发准备
- Unity5第二次作业物体绕10个点的bezier曲线
- Unity5中游戏角色(Object)平滑旋转
- Unity5 3D物体做beizer曲线
- Unity5模拟小球碰撞以及阻力现象
- Unity5_仿愤怒的小鸟游戏
- Unity5箱子中中物体碰撞效果
- Unity 5如何设置物体透明
- Unity3D单例管理类
- unity3d中的坑和解决方案
- Unity3d的Windows平台下的窗口切换与去边框
- Unity3d制作一个简单的打开保存对话框-编写核心代码(1)
- Unity3D-深入剖析NGUI的游戏UI架构