BindGameInputLayer.ts 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import { _decorator, Component, Node } from "cc";
  2. import BaseUI from "../../scripts/base/BaseUI";
  3. import { Hall } from "../hall/Hall";
  4. import { EditBox } from "cc";
  5. const { ccclass, property } = _decorator;
  6. export interface BindGameInputLayerListener {
  7. OnInput(input: string): void;
  8. }
  9. @ccclass("BindGameInputLayer")
  10. export class BindGameInputLayer extends BaseUI {
  11. static async show(listener: BindGameInputLayerListener) {
  12. let layer = await Hall.ins.showLayer("prefab/layer/BindGameInputLayer");
  13. layer.getComponent(BindGameInputLayer).init(listener);
  14. }
  15. @property(EditBox)
  16. public edit_code: EditBox = null;
  17. protected onLoad(): void {
  18. super.onLoad();
  19. }
  20. private listener: BindGameInputLayerListener;
  21. private init(listener: BindGameInputLayerListener) {
  22. this.listener = listener;
  23. }
  24. protected simpleOnBtnClick(name: string): void {
  25. switch (name) {
  26. case "btn_bind":
  27. let inputString = this.edit_code.string;
  28. this.closePage();
  29. this.listener.OnInput(inputString);
  30. break;
  31. }
  32. }
  33. }