Utils.ts 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import library = require("../BiBeng/Library");
  2. export default class Utils {
  3. /**
  4. * 将(秒)格式化为(分:秒)
  5. * @param seconds 秒数
  6. */
  7. public static FormatSecToMinSec(seconds:number):string{
  8. let minute = Math.floor(seconds/60);
  9. let second = Math.floor(seconds%60);
  10. return (minute<10?'0':'')+minute+':'+(second<10?'0':'')+second;
  11. }
  12. /**
  13. * 加载SpriteFrame
  14. * @param url 资源地址(base64url)
  15. * @param callback 成功回调
  16. */
  17. public static LoadSpriteFrame(url: string, callback: (spriteFrame: cc.SpriteFrame) => void) {
  18. if (url.substring(0, 10).toLocaleLowerCase() === "data:image") {
  19. library.setImageBase64(url, (texture2D: cc.Texture2D) => {
  20. let spriteFrame = new cc.SpriteFrame(texture2D);
  21. if (callback instanceof Function) callback(spriteFrame);
  22. });
  23. } else if (url.startsWith("http")) {
  24. cc.loader.load({url: url, type: "jpg"}, (err, texture2D: cc.Texture2D) => {
  25. if (err) {
  26. console.error("cc load image fail", err);
  27. return;
  28. }
  29. let spriteFrame = new cc.SpriteFrame(texture2D);
  30. if (callback instanceof Function) callback(spriteFrame);
  31. });
  32. } else {
  33. cc.loader.loadRes(url, cc.SpriteFrame, (err, spriteFrame: cc.SpriteFrame) => {
  34. if (err) return;
  35. if (callback instanceof Function) callback(spriteFrame);
  36. });
  37. }
  38. }
  39. }