少年修仙传客户端代码仓库
client_Wu Xijin
2018-10-16 4022540109e9f8d7913771bb26653b83274e06f1
4121  【前端】【1.2.0】添加复制联系方式成功的提示语
1个文件已修改
2个文件已添加
347 ■■■■■ 已修改文件
System/UserHelp/UserHelpContactCopySucceedTip.cs 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/UserHelp/UserHelpContactCopySucceedTip.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/UserHelp/UserHelpWin.cs 291 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/UserHelp/UserHelpContactCopySucceedTip.cs
New file
@@ -0,0 +1,44 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Tuesday, October 16, 2018
//--------------------------------------------------------
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
namespace Snxxz.UI
{
    public class UserHelpContactCopySucceedTip : MonoBehaviour
    {
        [SerializeField] Text m_Tip;
        [SerializeField] UIAlphaTween m_AlphaTween;
        [SerializeField] PositionTween m_PositionTween;
        bool busy = false;
        public void Display(string tip)
        {
            if (busy)
            {
                return;
            }
            busy = true;
            m_Tip.text = tip;
            this.gameObject.SetActive(true);
            m_AlphaTween.Play();
            m_PositionTween.Play();
        }
        private void OnTweenComplete()
        {
            busy = false;
            this.gameObject.SetActive(false);
        }
    }
}
System/UserHelp/UserHelpContactCopySucceedTip.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: bfc1f1740fb110745b7372aa9f50309c
timeCreated: 1539670174
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/UserHelp/UserHelpWin.cs
@@ -1,139 +1,152 @@
//--------------------------------------------------------
//    [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] 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_QQ;
        [SerializeField] Text m_Phone;
        [SerializeField] Button m_CopyQQ;
        [SerializeField] Button m_CopyPhone;
        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 = true;
            m_Contact.isOn = false;
            DisplayIssues(true);
            DisplayContact(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 = 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_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 = Config.Instance.Get<ContactConfig>(VersionConfig.Get().appId);
            m_QQ.text = Language.GetFromLocal(31, config.qq);
            m_Phone.text = Language.GetFromLocal(32, config.phone);
        }
        private void DisplayIssues(bool display)
        {
            m_IssueContainer.gameObject.SetActive(display);
            m_IssueTitle.color = UIHelper.GetUIColor(display ? TextColType.LightYellow : TextColType.NavyBrown);
        }
        private void DisplayContact(bool display)
        {
            m_ContactContainer.gameObject.SetActive(display);
            m_ContactTitle.color = UIHelper.GetUIColor(display ? TextColType.LightYellow : TextColType.NavyBrown);
        }
        private void CopyQQ()
        {
            SDKUtility.Instance.CopyContent(m_QQ.text);
        }
        private void CopyPhone()
        {
            SDKUtility.Instance.CopyContent(m_Phone.text);
        }
    }
}
//--------------------------------------------------------
//    [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] 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_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 = true;
            m_Contact.isOn = false;
            DisplayIssues(true);
            DisplayContact(false);
            m_CopySucceedTip.gameObject.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 = 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_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 = Config.Instance.Get<ContactConfig>(VersionConfig.Get().appId);
            m_QQ.text = Language.GetFromLocal(31, config.qq);
            m_Phone.text = Language.GetFromLocal(32, config.phone);
        }
        private void DisplayIssues(bool display)
        {
            m_IssueContainer.gameObject.SetActive(display);
            m_IssueTitle.color = UIHelper.GetUIColor(display ? TextColType.LightYellow : TextColType.NavyBrown);
        }
        private void DisplayContact(bool display)
        {
            m_ContactContainer.gameObject.SetActive(display);
            m_ContactTitle.color = UIHelper.GetUIColor(display ? TextColType.LightYellow : TextColType.NavyBrown);
        }
        private void CopyQQ()
        {
            if (Application.isMobilePlatform)
            {
                var config = Config.Instance.Get<ContactConfig>(VersionConfig.Get().appId);
                SDKUtility.Instance.CopyContent(config.qq);
                m_CopySucceedTip.Display(Language.GetFromLocal(33));
            }
        }
        private void CopyPhone()
        {
            if (Application.isMobilePlatform)
            {
                var config = Config.Instance.Get<ContactConfig>(VersionConfig.Get().appId);
                SDKUtility.Instance.CopyContent(config.phone);
                m_CopySucceedTip.Display(Language.GetFromLocal(33));
            }
        }
    }
}