DemoMenu.lua.txt 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. --[[
  2. Before:
  3. 1. Set Show Btn Count In Your Prefab
  4. 2. BtnItem GameObject: Tag => CommonUtilsMenu
  5. Tips:
  6. 1. require("Base/UIHelper.lua"):AddScript(menuBox, "CommonUtils/Menu/Menu.lua")
  7. 2. If Need:
  8. 2.1 Set Show Btn Count: nShowBtnCount => Odd Number
  9. require("CommonUtils/Menu/Menu.lua").SetShowItemData(nShowBtnCount)
  10. 2.2 Set Can Mouse Scroll Control
  11. require("CommonUtils/Menu/Menu.lua").SetMenuScroll()
  12. ]]
  13. local DemoMenu = {}
  14. local function SetEntryButton()
  15. print("---> DemoUINavigator.SetEntryButton")
  16. local rootPanel = DemoMenu.rootPanel
  17. local selectBtn = rootPanel.transform:Find("Btn_Select")
  18. local eventManager = require('Base/ZEventDispatchCenter.lua')
  19. eventManager:DispatchEvent(eventManager.EventType.COMMON_SET_ENTRY_BUTTON, selectBtn)
  20. end
  21. local function AddMenuScript()
  22. local rootPanel = DemoMenu.rootPanel
  23. local menuBox = rootPanel.transform:Find("ZUIMenuPanel").gameObject
  24. require("Base/UIHelper.lua"):AddScript(menuBox, "CommonUtils/Menu/Menu.lua")
  25. -- if you need
  26. -- require("CommonUtils/Menu/Menu.lua").SetShowItemData(5)
  27. -- require("CommonUtils/Menu/Menu.lua").SetMenuScroll()
  28. end
  29. local function OnClickBtnExit()
  30. require("Base/UIHelper.lua"):SwitchUI("CommonUtils/DemoLuaScripts/DemoAll.lua", "CommonUtils/DemoLuaScripts/DemoMenu.lua")
  31. end
  32. local function RegisterTouchEvent()
  33. local uiHelper = require("Base/UIHelper.lua")
  34. local rootPanel = DemoMenu.rootPanel
  35. uiHelper:AddClickEvent(rootPanel, "Btn_Exit", OnClickBtnExit)
  36. end
  37. local function RefreshUI()
  38. SetEntryButton()
  39. AddMenuScript()
  40. end
  41. function DemoMenu.Awake(luaRoot)
  42. DemoMenu.luaRoot = luaRoot
  43. local canvas = CS.UnityEngine.GameObject.Find('Canvas')
  44. DemoMenu._rootCanvas = canvas
  45. local prefabTest = LoadResource('CommonUtils/Prefabs/Demo/ZDemoMenuPanel.prefab')
  46. local rootPanel = CS.UnityEngine.GameObject.Instantiate(prefabTest, canvas.transform)
  47. DemoMenu.rootPanel = rootPanel
  48. end
  49. function DemoMenu.Start()
  50. RefreshUI()
  51. RegisterTouchEvent()
  52. end
  53. function DemoMenu.OnDestroy()
  54. CS.UnityEngine.GameObject.Destroy(DemoMenu.rootPanel)
  55. end
  56. return DemoMenu