import { _decorator, assetManager, Component, ImageAsset, Label, Node, Sprite, SpriteFrame, Texture2D } from 'cc'; import { BasePanel } from './BasePanel'; import { MyGame } from '../Game/MyGame'; const { ccclass, property } = _decorator; @ccclass('InforPanel') export class InforPanel extends BasePanel { @property(Sprite) private Avator: Sprite = null; @property(Label) private Name: Label = null; start() { this.Avator = this.node.getChildByName("Avator").getComponent(Sprite); // this.Name = this.node.getChildByPath("Name").getComponent(Label); this.initData(); } update(deltaTime: number) { } public async initData() { // 获取用户信息 let userInfo = MyGame.getInstance().getMyPlayerInfo(); let avatarUrl = userInfo.avatarUrl; // 确保 URL 是正确的 console.log("userInfo==>", userInfo, "avatarUrl==>", avatarUrl); let self = this; assetManager.loadRemote(avatarUrl, { ext: '.jpg' }, function (err, imageAsset) { if (err) { console.warn(avatarUrl, "无效的图片地址", err); return; } const spriteFrame = new SpriteFrame(); const texture = new Texture2D(); texture.image = imageAsset; spriteFrame.texture = texture; self.Avator.spriteFrame = spriteFrame; self.Avator.node.setScale(0.9, 0.9); // cb?.call(cb_target, spriteFrame); // map.set(uid, spriteFrame); }); await chsdk.changeUaseData(userInfo.nickName,userInfo.avatarUrl); } onClose() { super.onClose(null); } }