You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

73 lines
1.5 KiB

  1. -- 悠闲数字键盘界面
  2. local NumInputView = class("NumInputView", cc.UIView)
  3. function NumInputView:ctor(numCallback, delCallback, finishCallback)
  4. NumInputView.super.ctor(self);
  5. self.numCallback = numCallback
  6. self.delCallback = delCallback
  7. self.finishCallback = finishCallback
  8. local ui = loadUI("res/ui/ui_dating/ui_shuzijianpan.ui")
  9. self.ui = ui
  10. self:addChild(ui)
  11. end
  12. function NumInputView:onEnter()
  13. NumInputView.super.onEnter(self)
  14. self.ui.Items.Layout_8:playClip("fadeIn")
  15. -- 点击空白地方关闭
  16. self.ui.Items.Layout_1:registerClick(handler(self, self.onClose))
  17. -- 删除
  18. self.ui.Items.Button_Del:registerClick(handler(self, self.onClickDel))
  19. -- 完成
  20. self.ui.Items.Button_Finish:registerClick(handler(self, self.onClickFinish))
  21. -- 键盘数字
  22. for i = 1 ,10 do
  23. local num = i - 1
  24. local name = string.format("Button_%d",num)
  25. self.ui.Items[name]:registerClick(function ()
  26. self:onClickNum(num)
  27. end)
  28. end
  29. end
  30. function NumInputView:onClickNum(num)
  31. playBtnEffect()
  32. if self.numCallback then
  33. self.numCallback(num)
  34. end
  35. end
  36. function NumInputView:onClickDel()
  37. playBtnEffect()
  38. if self.delCallback then
  39. self.delCallback();
  40. end
  41. end
  42. function NumInputView:onClickFinish()
  43. playBtnEffect()
  44. self:onClose();
  45. end
  46. function NumInputView:onClose()
  47. if self.finishCallback then
  48. self.finishCallback()
  49. end
  50. self.ui.Items.Layout_8:playClip("fadeOut", function()
  51. self:removeFromParent()
  52. end)
  53. end
  54. return NumInputView;