//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Monday, October 15, 2018
|
//--------------------------------------------------------
|
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
using TableConfig;
|
|
namespace Snxxz.UI
|
{
|
|
public class UserHelpWin : Window
|
{
|
[SerializeField] Button m_Close;
|
[SerializeField] FunctionButton m_Issues;
|
[SerializeField] FunctionButton m_Contact;
|
|
[SerializeField] RectTransform m_IssueContainer;
|
[SerializeField] UserIssueBehaviour m_IssueBehaviourPattern;
|
[SerializeField] RectTransform m_ContactContainer;
|
[SerializeField] Text m_QQ;
|
[SerializeField] Text m_Phone;
|
[SerializeField] Button m_CopyQQ;
|
[SerializeField] Button m_CopyPhone;
|
|
#region Built-in
|
protected override void BindController()
|
{
|
}
|
|
protected override void AddListeners()
|
{
|
m_Close.SetListener(CloseClick);
|
m_Issues.SetListener(DisplayIssues);
|
m_Contact.SetListener(DisplayContact);
|
m_CopyQQ.SetListener(CopyQQ);
|
m_CopyPhone.SetListener(CopyPhone);
|
}
|
|
protected override void OnPreOpen()
|
{
|
InitIssues();
|
InitContact();
|
}
|
|
protected override void OnAfterOpen()
|
{
|
}
|
|
protected override void OnPreClose()
|
{
|
}
|
|
protected override void OnAfterClose()
|
{
|
}
|
#endregion
|
|
|
private void InitIssues()
|
{
|
var configs = Config.Instance.GetAllValues<HelpInfoConfig>();
|
var needCount = configs.Count;
|
|
var behaviours = new List<UserIssueBehaviour>();
|
behaviours.Add(m_IssueBehaviourPattern);
|
|
for (var i = 1; i < needCount; i++)
|
{
|
var instance = Instantiate(m_IssueBehaviourPattern.gameObject) as GameObject;
|
var behaviour = instance.GetComponent<UserIssueBehaviour>();
|
behaviours.Add(behaviour);
|
|
behaviour.transform.SetParentEx(m_IssueContainer, Vector3.zero, Vector3.zero, Vector3.one);
|
}
|
|
for (var i = 0; i < behaviours.Count; i++)
|
{
|
behaviours[i].Display(configs[i].title, configs[i].help);
|
}
|
}
|
|
private void InitContact()
|
{
|
var config = Config.Instance.Get<ContactConfig>(VersionConfig.Get().appId);
|
m_QQ.text = config.qq;
|
m_Phone.text = config.phone;
|
}
|
|
private void DisplayIssues()
|
{
|
m_IssueContainer.gameObject.SetActive(true);
|
m_ContactContainer.gameObject.SetActive(false);
|
}
|
|
private void DisplayContact()
|
{
|
m_IssueContainer.gameObject.SetActive(false);
|
m_ContactContainer.gameObject.SetActive(true);
|
|
}
|
|
private void CopyQQ()
|
{
|
SDKUtility.Instance.CopyContent(m_QQ.text);
|
}
|
|
private void CopyPhone()
|
{
|
SDKUtility.Instance.CopyContent(m_Phone.text);
|
}
|
|
}
|
|
}
|