| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- local Page = {}
- local nCurrentPageIndex = 1
- local function GetNextIndex()
- local tPageInfo = GetCache("PAGE_INFO")
- local nImgListCount = #tPageInfo.tImgPath
- local nNextPageIndex = nCurrentPageIndex + 1
- if nNextPageIndex > nImgListCount then
- nNextPageIndex = 1
- end
- return nNextPageIndex
- end
- local function GetPreIndex()
- local tPageInfo = GetCache("PAGE_INFO")
- local nImgListCount = #tPageInfo.tImgPath
- local nPrePageIndex = nCurrentPageIndex - 1
- if nPrePageIndex < 1 then
- nPrePageIndex = nImgListCount
- end
- return nPrePageIndex
- end
- local function ChangeCurrentIndexToNext()
- local tPageInfo = GetCache("PAGE_INFO")
- local nImgListCount = #tPageInfo.tImgPath
- nCurrentPageIndex = nCurrentPageIndex + 1
- if nCurrentPageIndex > nImgListCount then
- nCurrentPageIndex = 1
- end
- end
- local function ChangeCurrentIndexToPre()
- local tPageInfo = GetCache("PAGE_INFO")
- local nImgListCount = #tPageInfo.tImgPath
- nCurrentPageIndex = nCurrentPageIndex - 1
- if nCurrentPageIndex < 1 then
- nCurrentPageIndex = nImgListCount
- end
- end
- local function RefreshPageUI()
- local tPageInfo = GetCache("PAGE_INFO")
- local szCurrentPath = tPageInfo.tImgPath[nCurrentPageIndex]
- local nNextIndex = GetNextIndex()
- local szNextPath = tPageInfo.tImgPath[nNextIndex]
- local eventManager = require('Base/ZEventDispatchCenter.lua')
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_REFRESH_UI, szCurrentPath, szNextPath, tPageInfo.szImgBG)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_CHANGE_SHADOW_IMG, tPageInfo.szShadowLeft, tPageInfo.nShadowWidth)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_CHANGE_EFFENT_TYPE, tPageInfo.leftEffectType)
- end
- local function PageToPre()
- local tPageInfo = GetCache("PAGE_INFO")
- local szCurrentPath = tPageInfo.tImgPath[nCurrentPageIndex]
- local nNextIndex = GetPreIndex()
- local szNextPath = tPageInfo.tImgPath[nNextIndex]
- ChangeCurrentIndexToPre()
- local eventManager = require('Base/ZEventDispatchCenter.lua')
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_REFRESH_UI, szCurrentPath, szNextPath, tPageInfo.szImgBG)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_CHANGE_SHADOW_IMG, tPageInfo.szShadowRight)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_CHANGE_EFFENT_TYPE, tPageInfo.rightEffectType)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_EFFECT, tPageInfo.nEffectTime)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_CHANGE, nCurrentPageIndex)
- end
- local function PageToNext()
- local tPageInfo = GetCache("PAGE_INFO")
- local szCurrentPath = tPageInfo.tImgPath[nCurrentPageIndex]
- local nNextIndex = GetNextIndex()
- local szNextPath = tPageInfo.tImgPath[nNextIndex]
- ChangeCurrentIndexToNext()
- local eventManager = require('Base/ZEventDispatchCenter.lua')
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_REFRESH_UI, szCurrentPath, szNextPath, tPageInfo.szImgBG)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_CHANGE_SHADOW_IMG, tPageInfo.szShadowLeft)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_CHANGE_EFFENT_TYPE, tPageInfo.leftEffectType)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_MODULE_EFFECT, tPageInfo.nEffectTime)
- eventManager:DispatchEvent(eventManager.EventType.COMMON_UI_PAGE_CHANGE, nCurrentPageIndex)
- end
- local function InitPageUI()
- local rootPanel = Page.rootPanel
- local szPageScript = "CommonUtils/Page/PageModule.lua"
- local uiHelper = require('Base/UIHelper.lua')
- uiHelper:AddScript(rootPanel, szPageScript)
- require(szPageScript).Init()
- RefreshPageUI()
- end
- local function RefreshUI()
- InitPageUI()
- end
- local function RegisterEvent()
- local eventManager = require('Base/ZEventDispatchCenter.lua')
- eventManager:RegisterEvent(eventManager.EventType.COMMON_UI_PAGE_PRE, PageToPre)
- eventManager:RegisterEvent(eventManager.EventType.COMMON_UI_PAGE_NEXT, PageToNext)
- end
- local function UnregisterEvent()
- local eventManager = require('Base/ZEventDispatchCenter.lua')
- eventManager:UnregisterEvent(eventManager.EventType.COMMON_UI_PAGE_NEXT, PageToNext)
- eventManager:UnregisterEvent(eventManager.EventType.COMMON_UI_PAGE_PRE, PageToPre)
- end
- local function UnInitPage()
- require("CommonUtils/Page/PageModule.lua").UnInit()
- end
- local function UnInitData()
- nCurrentPageIndex = 1
- end
- function Page.Awake(luaRoot)
- Page.luaRoot = luaRoot
- local canvas = CS.UnityEngine.GameObject.Find('Canvas')
- Page._rootCanvas = canvas
- Page.rootPanel = luaRoot
- end
- function Page.Init()
- RefreshUI()
- RegisterEvent()
- end
- function Page.UnInit()
- UnInitPage()
- UnInitData()
- UnregisterEvent()
- end
- return Page
|