//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Monday, October 15, 2018
|
//--------------------------------------------------------
|
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
|
namespace vnxbqy.UI
|
{
|
|
public class UserHelpWin : Window
|
{
|
[SerializeField] Button m_Close;
|
[SerializeField] Toggle m_Issues;
|
[SerializeField] Text m_IssueTitle;
|
[SerializeField] Toggle m_Contact;
|
[SerializeField] Text m_ContactTitle;
|
|
[SerializeField] RectTransform m_IssueContainer;
|
[SerializeField] ScrollRect m_IssueScrollRect;
|
[SerializeField] UserIssueBehaviour m_IssueBehaviourPattern;
|
[SerializeField] RectTransform m_ContactContainer;
|
[SerializeField] Text m_QQTitle;
|
[SerializeField] Text m_QQ;
|
[SerializeField] Text m_Phone;
|
[SerializeField] Button m_CopyQQ;
|
[SerializeField] Button m_CopyPhone;
|
|
[SerializeField] UserHelpContactCopySucceedTip m_CopySucceedTip;
|
|
bool inited = false;
|
#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()
|
{
|
if (!inited)
|
{
|
inited = true;
|
InitIssues();
|
InitContact();
|
}
|
|
m_Issues.isOn = false;
|
m_Contact.isOn = true;
|
DisplayIssues(false);
|
DisplayContact(true);
|
m_CopySucceedTip.SetActive(false);
|
}
|
|
protected override void OnAfterOpen()
|
{
|
}
|
|
protected override void OnPreClose()
|
{
|
}
|
|
protected override void OnAfterClose()
|
{
|
}
|
|
protected override void OnActived()
|
{
|
base.OnActived();
|
}
|
#endregion
|
|
private void InitIssues()
|
{
|
var configs = HelpInfoConfig.GetValues();
|
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_IssueScrollRect.content, 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 = ContactConfig. GetConfig(VersionConfig.Get().appId, VersionConfig.Get().branch);
|
|
m_QQTitle.text = Language.GetFromLocal(31);
|
var qqContent = config.qq.Split('|');
|
m_QQ.text = string.Join("\r\n", qqContent);
|
m_CopyQQ.SetActive(qqContent.Length == 1);
|
|
m_Phone.text = Language.GetFromLocal(32, config.phone);
|
}
|
|
private void DisplayIssues(bool display)
|
{
|
m_IssueContainer.SetActive(display);
|
m_IssueTitle.color = UIHelper.GetUIColor(display ? TextColType.LightYellow : TextColType.NavyBrown);
|
}
|
|
private void DisplayContact(bool display)
|
{
|
m_ContactContainer.SetActive(display);
|
m_ContactTitle.color = UIHelper.GetUIColor(display ? TextColType.LightYellow : TextColType.NavyBrown);
|
}
|
|
private void CopyQQ()
|
{
|
if (Application.isMobilePlatform)
|
{
|
var config = ContactConfig.GetConfig(VersionConfig.Get().appId, VersionConfig.Get().branch);
|
ynmbxxjUtil.Instance.CopyContent(m_QQ.text);
|
m_CopySucceedTip.Display(Language.GetFromLocal(33));
|
}
|
}
|
|
private void CopyPhone()
|
{
|
if (Application.isMobilePlatform)
|
{
|
var config = ContactConfig.GetConfig(VersionConfig.Get().appId, VersionConfig.Get().branch);
|
ynmbxxjUtil.Instance.CopyContent(config.phone);
|
m_CopySucceedTip.Display(Language.GetFromLocal(33));
|
}
|
}
|
|
}
|
|
}
|
|
|
|
|