首页 > 其他分享 >关于QFramework UIKit和ResKit生成的UI预制体打包后报错Failed to Create Res. Not Find By ResSearchKeys:AssetName:base

关于QFramework UIKit和ResKit生成的UI预制体打包后报错Failed to Create Res. Not Find By ResSearchKeys:AssetName:base

时间:2024-12-17 10:01:30浏览次数:12  
标签:调用 UIKit Res private ResKit Init 报错 mResLoader

 使用UIKit创建UI Prefb后打包发布后提示Failed to Create Res. Not Find By ResSearchKeys:AssetName:basepanel BundleName: TypeName:UnityEngine.GameObject,找不到所需资源。下方如图1-1的报错。

图1-1

问题原因:一开始以为是没有按照教程所说的流程来创建。按照教程所说流程尝试后仍然未解决。查找资料后发现,使用UIKit管理方案需要在调用前初始化AssetBundles文件夹中的bin文件。

解决办法如下

using UnityEngine;

namespace QFramework.Example
{
    public class ResKitExample : MonoBehaviour
    {
        // 每个脚本都需要
        private ResLoader mResLoader = ResLoader.Allocate();

        private void Start()
        {
            // 项目启动只调用一次即可
            ResKit.Init();
        }

        private void OnDestroy()
        {
            // 释放所有本脚本加载过的资源
            // 释放只是释放资源的引用
            // 当资源的引用数量为 0 时,会进行真正的资源卸载操作
            mResLoader.Recycle2Cache();
            mResLoader = null;
        }
    }
}

使用前调用 ResKit.Init();它会调用ResMgr.Init();去加载bin文件。如下图1-2、图1-3

图1-2

ResMgr才是真正进行加载资源操作的脚本

图1-3 

标签:调用,UIKit,Res,private,ResKit,Init,报错,mResLoader
From: https://blog.csdn.net/KUANG1919/article/details/144526170

相关文章

  • CS152 Representing Elephants as Lists
    CS152Lab Exercise5: Representing Elephantsas ListsThe purposeofthis project isto practice modular designofcodewitha larger,slightly more complexsimulationthanthepenguinsimulation. Wewill be makinguseof nested lists--lists......
  • mysql9.1.0.msi的安装报错——Database_initialization_failed
    报错LogBeginningconfigurationstep:WritingconfigurationfileSavingmy.iniconfigurationfile...Savedmy.iniconfigurationfile.Endedconfigurationstep:WritingconfigurationfileBeginningconfigurationstep:UpdatingWindowsFirewallrulesA......
  • CFA知识点梳理系列:CFA Level II, Reading 1 Multiple Regression
    前言当年考CFA的时候,从二级开始,为了方便备考和复习,我把每一个章节的要点全部整理成了xmind的格式。今天突发奇想,这些整理好的思维导图,与其静静地躺在我的电脑里,不如分享出来给大家,说不定能帮助到更多的人。所以从今天开始,我将不定期地按章节将这些内容更新上来。除了将思维......
  • 单元测试中Hamcrest的常见用法
    maven:<groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><version>1.3</version> 在Spock单元测试框架中,Hamcrest提供了一系列的匹配器方法,用于增强测试断言的表达力和可读性。以下是一些Spock中常用的Hamcrest匹配器方法及其详细介绍:Hamcrest......
  • C++ 出现异常“.... \debug_heap.cpp Line:980 Expression:__acrt_first_block==head
      1. “修改了当前程序的vc运行库配置,问题解决(1)修改:项目-属性-配置属性-C/C++-代码生成-运行库,将其改为“多线程调试(/MTd)”。”其中:【多线程/MT】【多线程调试/MTd】-----【多线程DLL/MD(默认)】-------【多线程调试DLL/MDd】 /MT、/MTd、/MD、/MDd什么......
  • 报错:jsmpeg.min.js:1 The AudioContext was not allowed to start. It must be resume
    文章目录问题分析1.添加用户点击监听事件2.使用userGesture事件3.手动触发用户交互4.使用await和async问题在使用jsmpeg接入视频流时控制台报警告,且页面没出现视频分析这个报错是因为浏览器的安全策略限制,AudioContext需要在用户与页面进行交互(如点击、......
  • Express的使用笔记9 使用bcrypt算法给用户密码加密
    先了解一下bcrypt算法,一种基于Blowfish密码学算法的密码散列函数,用于在密码存储时抵抗暴力破解攻击,通过在散列过程中加salt来提高安全性,salt是个随机生成的数据串,与密码一起被散列,使得即使两个相同的密码也会产生不同的散列值。bcrypt算法允许开发者指定工作因子(成本因子),决定散列......
  • 线性回归(linear regression)
    其实线性回归不过就是在做两件事,画一条线并判断这条线到各个点的距离。如下图:其中这条线便是距离各个点距离总和最小的直线。也就是e+u+w+b+a总和在直线为这个情况下最小。 但是什么时候这条线是我们需要的线呢?--线到各个点最短的时候便是。我们先理解一下什么是凹函数:......
  • 如何在 Spring Boot 应用程序中使用 WireMock 模拟外部 rest api 调用进行测试
    模拟外部API调用是集成或端到端测试中的常见做法,因为它允许开发人员将他们的代码与外部隔离。如果我们使用付费API并希望避免在测试时进行调用以节省资金,这也会有所帮助。有两种方法可以模拟外部API使用Mockito使用WireMock在集成测试和端到端测试中,我更喜欢使用Wir......
  • openGauss报错:Too many open files,解决方案
    操作系统信息Linuxuser-pc5.4.18-87.76-generic#gfb16-KYLINOSSMPThuAug3109:05:44UTC2023aarch64aarch64aarch64GNU/Linux解决方案当前使用gsql-dpostgres-p5432-r命令登录数据的时候,报错如下:gsql:FATAL:couldnotlookuplocaluserID1002:Too......