FairyGUI为我们封装了一个关于界面的基类Window,下面介绍Window的使用。
导出资源
代码实现
using System;
using System.Collections.Generic;
using FairyGUI;
/*
* Author:W
* 窗口扩展
*/
public class Window1 : Window
{
public Window1()
{
}
/// <summary>
/// 重写Init方法
/// </summary>
protected override void OnInit()
{
this.contentPane = UIPackage.CreateObject("Basics", "WindowA").asCom;
this.Center();
}
/// <summary>
/// 重写显示方法
/// </summary>
override protected void OnShown()
{
GList list = this.contentPane.GetChild("n6").asList;
list.RemoveChildrenToPool();
for (int i = 0; i < 6; i++)
{
GButton item = list.AddItemFromPool().asButton;
item.title = "" + i;
item.icon = UIPackage.GetItemURL("Basics", "r4");
}
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using FairyGUI;
/*
* Author:W
* 关于Window窗口界面的继承扩展的使用
*
*/
public class WindowTest : MonoBehaviour {
private GComponent root;
private GButton button;
void Awake()
{
UIPackage.AddPackage("UI/Basics");
}
// Use this for initialization
void Start () {
root = this.GetComponent<UIPanel>().ui;
button = root.GetChild("n0").asButton;
button.onClick.Add(()=> {
Window window1 = new Window1();
window1.Show();
});
}
// Update is called once per frame
void Update () {
}
}
运行结果如下