FM/Assets/Scripts/Runtime/UI/Item/Product4LineItem.cs

75 lines
1.6 KiB
C#

using System;
using Runtime;
using Runtime.UI.Other;
using UnityEngine.UI;
using TMPro;
using UnityEngine;
using ZGame;
namespace HK
{
public class Product4LineItem : UIItemBase
{
[SerializeField] private Button btnNext;
[SerializeField] private NotebookLineBar NotebookLineBar;
Book_M book;
public Action ClickAction;
public override void OnInit()
{
base.OnInit();
#region AutoGen_Init
btnNext = GetValue<Button>("btnNext");
NotebookLineBar = GetValue<NotebookLineBar>("NotebookLineBar");
btnNext.onClick.AddListener(OnClickbtnNext);
#endregion
NotebookLineBar.OnClickAction += ChooseLine;
}
private void ChooseLine(Texture obj)
{
book.ChangeLineTexture(obj);
}
public void SetBook(Book_M book)
{
this.book = book;
}
public override void OnShow()
{
base.OnShow();
book.SetIndex(3);
EventManager.Instance.FireNow(this,new Product2SetDesignCoverPositionEventArgs(3));
}
#region AutoGen_Method
private void OnClickbtnNext()
{
ClickAction?.Invoke();
}
#endregion
public override void OnDispose()
{
base.OnDispose();
NotebookLineBar.OnClickAction -= ChooseLine;
#region AutoGen_Dispose
btnNext.onClick.RemoveListener(OnClickbtnNext);
btnNext = null;
NotebookLineBar = null;
#endregion
}
}
}