ExportItem.ts 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import { Component, EventTouch, ImageAsset, LabelComponent, loader, Node, SpriteComponent, SpriteFrame, _decorator } from 'cc';
  2. import { UIConst } from '../../../games/ui/UIConst';
  3. import { LiangLiangSDK } from '../../../libs/liangliangSDK';
  4. import { GUIManager } from '../GUIManager';
  5. const { ccclass, property } = _decorator;
  6. @ccclass('ExportItem')
  7. export class ExportItem extends Component {
  8. @property({
  9. type:SpriteComponent,
  10. tooltip:"图片"
  11. })
  12. icon:SpriteComponent=null;
  13. @property({
  14. type:LabelComponent,
  15. tooltip:"图片"
  16. })
  17. label:LabelComponent=null;
  18. data:any;
  19. start () {
  20. this.node.on(Node.EventType.TOUCH_START,this.__itemTouchStart.bind(this),this);
  21. }
  22. updateItem(data:any):void{
  23. this.data=data;
  24. this.label.string=this.data.name;
  25. loader.load(this.data.icon,this.__loadProgress.bind(this),this.__loadComplete.bind(this));
  26. }
  27. private __loadProgress(...arg):void{
  28. }
  29. private __itemTouchStart(touch:EventTouch):void{
  30. let self = this;
  31. if(this.wx!=null)
  32. {
  33. this.wx.navigateToMiniProgram({
  34. appId: this.data.app_id,
  35. path: this.data.app_path,
  36. success: (res) =>
  37. {
  38. LiangLiangSDK.CpaReport(self.data);
  39. },
  40. fail: (res) => {
  41. GUIManager.single.Show(UIConst.FULL_OUTPUT_UI);
  42. console.log("跳转失败!");
  43. },
  44. complete: (res) => {},
  45. });
  46. }
  47. else
  48. {
  49. console.log("点中了图标 : " + this.data.name);
  50. }
  51. }
  52. private get wx():any{
  53. return window["wx"];
  54. }
  55. private __loadComplete(err:Error,texture:ImageAsset):void{
  56. if(err){
  57. console.log(err);
  58. return;
  59. }
  60. let frame:SpriteFrame=new SpriteFrame();
  61. frame.texture=texture._texture;
  62. this.icon.spriteFrame=frame;
  63. }
  64. // update (deltaTime: number) {
  65. // // Your update function goes here.
  66. // }
  67. }