FriendInfo.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import { _decorator, Component, Sprite, Label, ImageAsset, SpriteFrame, Texture2D } from 'cc';
  2. import { ResourceLoader } from '../core/resourceManager/ResourceLoader';
  3. import { ISJSB } from '../data/jsb/platform';
  4. const { ccclass, property, requireComponent } = _decorator;
  5. /**
  6. * 好友信息
  7. */
  8. @ccclass('FriendInfo')
  9. @requireComponent(ResourceLoader)
  10. export class FriendInfo extends Component {
  11. @property({ type: Sprite, tooltip: "头像" })
  12. headImg: Sprite;
  13. @property({ type: Label, tooltip: "昵称文本" })
  14. nickNameLabel: Label;
  15. @property({ type: Label, tooltip: "等级文本" })
  16. LvLabel: Label;
  17. @property({ type: Label, tooltip: "关系文本" })
  18. relationLabel: Label;
  19. @property({ type: Label, tooltip: "贡献文本" })
  20. contributionLabel: Label;
  21. private numArr = ["一", "二", "三", "四", "五"];
  22. start() {
  23. }
  24. private async onOpenHandler(data: any) {
  25. if (ISJSB() && data.avator) {
  26. let img = await this.getComponent(ResourceLoader).loadRemote<ImageAsset>(data.avator, { ext: ".png" });
  27. const spriteFrame = new SpriteFrame();
  28. const texture = new Texture2D();
  29. texture.image = img;
  30. spriteFrame.texture = texture;
  31. this.headImg.spriteFrame = spriteFrame;
  32. }
  33. data.data.totalRevenueAmount = data.data.totalRevenueAmount || 0;
  34. this.contributionLabel.string = data.data.totalRevenueAmount.toFixed(0);;
  35. this.relationLabel.string = this.numArr[data.friednLv] + '级好友';
  36. this.nickNameLabel.string = data.data.nickname;
  37. // this.nickNameLabel.string = FsUtils.beautySub(this.nickNameLabel.string, 6);
  38. let lv = data.data.lv ? data.data.lv : 1;
  39. this.LvLabel.string = lv + '级';
  40. }
  41. }