| | |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | using Cysharp.Threading.Tasks; |
| | | |
| | | public abstract class OSActivityBaseWin : FunctionsBaseWin |
| | | { |
| | |
| | | protected abstract int GetRankType(); |
| | | |
| | | // 由子类实现:实例化对应的三个子窗口 |
| | | protected abstract UIBase GetRankWin(); |
| | | protected abstract UIBase GetAwardWin(); |
| | | protected abstract UIBase GetGiftWin(); |
| | | protected abstract UniTask<UIBase> GetRankWin(); |
| | | protected abstract UniTask<UIBase> GetAwardWin(); |
| | | protected abstract UniTask<UIBase> GetGiftWin(); |
| | | |
| | | protected override void OpenSubUIByTabIndex() |
| | | protected override async void OpenSubUIByTabIndex() |
| | | { |
| | | switch (functionOrder) |
| | | { |
| | | case 0: |
| | | currentSubUI = GetRankWin(); |
| | | currentSubUI = await GetRankWin(); |
| | | break; |
| | | case 1: |
| | | currentSubUI = GetAwardWin(); |
| | | currentSubUI = await GetAwardWin(); |
| | | break; |
| | | case 2: |
| | | // 如果后续有活动没有礼包页签,只需在子类里返回 null 或不调用即可 |
| | | currentSubUI = GetGiftWin(); |
| | | currentSubUI = await GetGiftWin(); |
| | | break; |
| | | } |
| | | } |