FairyGUI-控制器Controller
控制器类似“状态机”,当“监听”的属性状态发生变化时(如按钮的按下点击、下拉框、菜单栏切换等),组件会显示不同的“页面”状态。using System.Collections;using System.Collections.Generic;using UnityEngine;using FairyGUI;/** Author:W* 控制器:* 1.分页 一个组件可以由多个页面组成。* 2.按钮状
·
控制器类似“状态机”,当“监听”的属性状态发生变化时(如按钮的按下点击、下拉框、菜单栏切换等),组件会显示不同的“页面”状态。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using FairyGUI;
/*
* Author:W
* 控制器:
* 1.分页 一个组件可以由多个页面组成。
* 2.按钮状态 按钮通常有按下、鼠标悬浮等多个状态,我们可以利用控制器为每个状态安排不同的显示内容。
* 3.属性变化 利用控制器,我们可以使元件具有多个不同的形态,并且可以方便地切换。
*/
public class GControllerTest : MonoBehaviour {
private GComponent root;
private Controller controller;
void Awake()
{
UIPackage.AddPackage("UI/Basics");
}
// Use this for initialization
void Start () {
root = this.GetComponent<UIPanel>().ui;
controller = root.GetController("c2");
//通过索引设置控制器的活动页面
controller.selectedIndex = 0;
//如果希望改变控制器时不触发Change事件
controller.SetSelectedIndex(0);
controller.onChanged.Add(()=> {
Debug.Log("当前控制器的状态值 = "+controller.selectedIndex);
});
}
// Update is called once per frame
void Update () {
}
}
运行结果如下
灵活恰当使用控制器,可以有效地实现组件内页面的状态切换。
更多推荐
所有评论(0)