解决问题:在cocos create中如何从b文件调用到a文件里用CC.resource.load动态加载的图集

        

目录

        1.在a文件中定义一个公共的变量存储动态加载的图集

        2.在a.js中添加一个静态方法,返回动态加载的图集

        3.在b.js中使用a.js中定义的静态方法获取图集,并使用它


        假设a文件中用CC.resource.load动态加载了一张图集,b文件需要使用这张图集,可以按照以下步骤:

        1.在a文件中定义一个公共的变量存储动态加载的图集

// a.js
let atlas = null;

export default class A extends cc.Component {
    onLoad() {
        cc.resources.load("atlas/imgs", cc.SpriteAtlas, (err, res) => {
            if (err) {
                cc.error(err.message || err);
                return;
            }
            atlas = res;
        });
    }
}
 

        2.在a.js中添加一个静态方法,返回动态加载的图集

// a.js
let atlas = null;

export default class A extends cc.Component {
    // ...

    static getAtlas() {
        return atlas;
    }
}
 

        3.在b.js中使用a.js中定义的静态方法获取图集,并使用它

// b.js
import A from './a';

export default class B extends cc.Component {
    onLoad() {
        let atlas = A.getAtlas();
        let spriteFrame = atlas.getSpriteFrame("img_1");
        // 使用 spriteFrame
    }
}
 

        这样,就可以从b.js中成功调用a.js中用CC.resource.load动态加载的图集了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Galaxy银河

你的鼓励是我的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值