Unity FairyGUI(六)
一.关联系统
官方文档
- 一般不会用代码设置关联,除非动态的列表需要设置时
- UI的九宫格,自适应,随文本改变大小等功能
public class Lesson25 : MonoBehaviour
{
private void Start()
{
GRoot.inst.SetContentScaleFactor(1365, 768,
UIContentScaler.ScreenMatchMode.MatchHeight);
var pack = UIPackage.AddPackage("Package1");
foreach (var item in pack.dependencies)
UIPackage.AddPackage(item["name"]);
var com = UIPackage.CreateObject("Package1", "LearnFGUI").asCom;
GRoot.inst.AddChild(com);
var g = com.GetChild("n29");
g.AddRelation(com,RelationType.Left_Left);
g.AddRelation(com,RelationType.Top_Top);
g.RemoveRelation(com,RelationType.Left_Left);
g.RemoveRelation(com,RelationType.Top_Top);
g.relations.ClearAll();
g.relations.ClearFor(com);
}
}
二.标签
官方文档
- title 可以是普通文本,富文本,也可以是标签、按钮。
- icon 可以是装载器,也可以是标签、按钮。
public class Lesson26 : MonoBehaviour
{
private void Start()
{
GRoot.inst.SetContentScaleFactor(1365, 768,
UIContentScaler.ScreenMatchMode.MatchHeight);
var pack = UIPackage.AddPackage("Package1");
foreach (var item in pack.dependencies)
UIPackage.AddPackage(item["name"]);
var com = UIPackage.CreateObject("Package1", "LearnFGUI2").asCom;
GRoot.inst.AddChild(com);
var label = com.GetChild("n5").asLabel;
label.text = "3657789";
label.icon = "ui://1wrrn0eqmis430";
}
}
三.按钮
官方文档
public class Lesson27 : MonoBehaviour
{
void Start()
{
GRoot.inst.SetContentScaleFactor(1365, 768,
UIContentScaler.ScreenMatchMode.MatchHeight);
var pack = UIPackage.AddPackage("Package1");
foreach (var item in pack.dependencies)
UIPackage.AddPackage(item["name"]);
var t = UIPackage.GetItemAsset("Package1", "btnMusic");
Debug.Log(t);
UIConfig.buttonSound = t as NAudioClip;
UIConfig.buttonSoundVolumeScale = 0.5f;
GRoot.inst.EnableSound();
GRoot.inst.DisableSound();
GRoot.inst.soundVolume = 0.5f;
var com = UIPackage.CreateObject("Package1", "LearnFGUI2").asCom;
GRoot.inst.AddChild(com);
var btn = com.GetChild("n9").asButton;
btn.text = "哈哈哈";
btn.onClick.Add(() =>
{
print("按钮点击!");
});
btn.FireClick(true,true);
btn.onClick.Call();
}
}