动态加载_动态加载数据 - CSDN
精华内容
参与话题
  • 动态加载

    2018-08-28 20:50:06
    不仅表示类的类类型也表示动态加载类   要区分编译和运行 编译时刻加载类是静态加载类,运行时刻加载类是动态加载类   new创建对象 是静态加载类 在编译刻就需要加载可能用到的类   所以我们希望用动态加载...

    Class.forName(类的全称);不仅表示类的类类型也表示动态加载类

     

    要区分编译和运行 编译时刻加载类是静态加载类,运行时刻加载类是动态加载类

     

    new创建对象 是静态加载类 在编译刻就需要加载可能用到的类

     

    所以我们希望用动态加载类 那么如何加载呢?

     

    首先创建OfficeBetter.java

    class OfficeBetter{

       public static void main(String[] args){

    try{

    //动态加载类,在运行时刻加载

    Class c=Class.forName(args[0]);

    }catch(Exception e)

    {e.printStackTrace();}

       }

    }

     

    此时编译不会报错因为他不管你将要用到哪些类 但是当你运行时要用到具体的类了,如果没有则会报错 如下编译没问题 运行时需要用到Excel类 但是找不到

     

    接下来创建对象

     

    class OfficeBetter{

       public static void main(String[] args){

    try{

    //动态加载类,在运行时刻加载

    Class c=Class.forName(args[0]);

     

    /*通过类类型创建对象 (注意要往将要加载的类做强制转换),但是用到的类不同就有不同的转换,例如往Word做转换:Word w=(Word)c.newInstance();但是加载的类是Excel怎么办; 往Excel做转换:Excel e=(Excel)c.newInstance();但是加载的类是Word怎么办

    所以要想让他们都能在这里用 就要给他们统一标准

    */

    OfficeAble oa=(OfficeAble)c.newInstance();

    Oa.start();

     

    }catch(Exception e)

    {e.printStackTrace();}

       }

    }

     

     

    接下来给Word和Excel制定一个共同的标准

    创建接口 OfficeAble.java

    Interface OfficeAble

    {

    Public void start();

    }

    这样的话就可以oa.start()了

     

     

    创建Word.java 并让其遵循标准

    class Word implementsOfficeAble

    {

    Public static void start()

    {System.out.println(“Word….starts….”);}

    }

     

     

    创建Excel.java 并让其遵循标准

    class Excel implements OfficeAble

    {

    Public static void start()

    {System.out.println(“Excel….starts….”);}

    }

    展开全文
  • Unity实现动态资源加载的4种方式

    千次阅读 2019-05-06 21:26:31
    前几天老大要做一下unity资源的加载熟悉下unity资源加载的API,自己的代码还是有点烂啊,在老大的教导下,现在能将就看看了。 使用unity开发游戏的过程中,资源的加载一直都是需要重点关注的。unity一共提供了5种...

    前几天老大要做一下unity资源的加载熟悉下unity资源加载的API,自己的代码还是有点烂啊,在老大的教导下,现在能将就看看了。 

    使用unity开发游戏的过程中,资源的加载一直都是需要重点关注的。unity一共提供了5种资源加载的方式,分别是Resources(只能加载Resources目录中的资源),AssetBundle(只能加载AB资源,当前设备允许访问的路径都可以),WWW(可以加载任意处资源,包括项目外资源(如远程服务器)),AssetDatabase(只能加载Assets目录下的资源,但只能用于Editor),UnityWebRequest(可以加载任意处资源,是WWW的升级版本)。关于加载的的具体方法建议直接看Unity的API,讲解的比较明白,这里提一下同步与异步加载的意思与优缺点:

    同步:并不是按字面意思的同时或一起,而是指协同步调,协助、相互配合。是按先后顺序执行在发出一个功能调用时,在没有得到返回结果之前一直在等待,不会继续往下执行。异步:刚好和同步相反,也就是在发出一个功能调用时,不管没有没得到结果,都继续往下执行,异步加载至少有一帧的延迟。

    同步的优点:管理方便,资源准备好可以及时返回。缺点:没有异步快。
    异步的优点:速度快与主线程无关。缺点:调用比较麻烦,最好的做法是使用回调。

    在UnityWebRequest和WWW的使用过程中使用了回调,为了方便以后自己使用,贴一下代码:

    首先是定义一个资源加载的接口:

    public interface IResourcesLoadingMode  {
        void ResourcesLoading<T>(T t,string path, bool IsAsync) where T:UnityEngine.Object;
        void ResourcesUnLoading<T>(T t)where T:UnityEngine.Object;
    	
    }

    然后是资源加载的基类:

    public class ResourcesLoadingMode : IResourcesLoadingMode
    {
        public Image Img;
        public MonoBehaviour MB;
    
        public virtual void ResourcesLoading<T>(T t,string path, bool IsAsync) where T:UnityEngine.Object
        {
            throw new NotImplementedException();
        }
    
        public virtual void ResourcesUnLoading<T>(T t) where T : UnityEngine.Object
        {
            throw new NotImplementedException();
        }
    }

    这里的monoBehaviour是因为整个资源加载器没有继承MonoBehaviour,在异步加载的时候可以把上层控制层的MonoBehavior拿过来,以便可以调用协程实现异步加载。这是一种解决方案,在老大的教导下采用了第二种使用回调函数的方案。

    Resouces方式:

     public override void ResourcesLoading<T>(T t,string path, bool IsAsync) 
        {
    
           if (IsAsync == false)
            {
                T load = Resources.Load<T>(path);
                t = load;
                Debug.Log("===="+path+"====");
                if (t.GetType() == Img.sprite.GetType())
                {
                    Img.sprite = t as Sprite;
                    Resources.UnloadAsset(t);
                }
            }
            else
            {
                T load = Resources.LoadAsync<T>(path).asset as T;
                t = load;
                if (t.GetType() == Img.sprite.GetType())
                {
                    Img.sprite = t as Sprite;
                    Resources.UnloadAsset(t);
                }
            }
        }

    AssetDatabase方式:

     public override void ResourcesLoading<T>(T t,string path, bool IsAsync)
        {
            if (IsAsync==false)
            {
                //s=string.Format( "Assets/Image/{0}.jpg",Index.ToString())
                T load = AssetDatabase.LoadAssetAtPath<T>(path);
                Debug.Log(path);
                t = load;
                Debug.Log(t.name);
                if (t.GetType() == Img.sprite.GetType())
                {
                    Img.sprite = t as Sprite;
                    Resources.UnloadAsset(t);
                }
                else
                {
                    Debug.Log(t.name);
                }
            }
    
            else
            {
                Debug.Log("assetdatabase没有异步加载");
            }
        }

    WWW方式:

    public override void ResourcesLoading<T>(T t,string path,bool isAsync)
        {
            if (isAsync == true)
            {
              // MB.StartCoroutine(WWWLoad());
            }
            else
            {
                Debug.Log("----WWW没有同步加载----");
            }
        }
    
        public override void ResourcesUnLoading<T>(T t)
        {
            base.ResourcesUnLoading<T>(t);
           
        }
    
        public static IEnumerator WWWLoad(string url, Action<WWW>callback)
        {
            Debug.Log("----WWW协程调用----");
            //string url = string.Format(@"file://{0}/{1}.jpg", Application.streamingAssetsPath, Index.ToString());
            WWW www = new WWW(url);
            yield return www;
            callback.Invoke(www);
            yield return null;
        }

    WWW方式的回调(上层的逻辑来决定需要加载什么资源,写在回调函数里):

    /// <summary>
        /// WWW回调函数
        /// </summary>
        /// <param name="obj"></param>
        private void WWWcallback(object obj)
        {
            WWW www = obj as WWW;
            Texture2D tex = www.texture;
            BG.sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), Vector2.zero);
            Debug.Log("----callback调用----");
            www.Dispose();
        }

    UnityWebRequest方式:

      public override void ResourcesLoading<T>(T t,string path,bool isAsync)
        {
            
            if (isAsync==false)
            {
                Debug.Log("unityWebRequest没有同步加载");
            }
        }
    
        public override void ResourcesUnLoading<T>(T t)
        {
            base.ResourcesUnLoading<T>(t);
        }
    
        public static IEnumerator UnityWebRequestLoad(string url,Action<UnityWebRequest>callback)
        {
            //string url =string.Format( @"file://{0}/{1}.jpg", Application.streamingAssetsPath,Index.ToString());
            UnityWebRequest webRequest = UnityWebRequestTexture.GetTexture(url);
            yield return webRequest.SendWebRequest();
            if (webRequest.isNetworkError || webRequest.isHttpError)
            {
                Debug.Log(webRequest.error);
            }
            else
            {
                callback.Invoke(webRequest);
                yield return null;
                //Texture2D tex = DownloadHandlerTexture.GetContent(webRequest);
                //Img.sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), Vector2.zero);
            }
        }
    }

    UnityWebRequest的回调:

     /// <summary>
        /// UnityWebRequest回调函数
        /// </summary>
        /// <param name="obj"></param>
        private void unityWebRequestcallback(object obj)
        {
            UnityWebRequest request = obj as UnityWebRequest;
            Texture2D tex = DownloadHandlerTexture.GetContent(request);
            BG.sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), Vector2.zero);
            request.Dispose();
        }

    最后的业务层代码也贴一点核心的方法:

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.Networking;
    using UnityEngine.UI;
    
    public class ModeControl : MonoBehaviour {
    
       
        public bool IsAsync;                              //是否异步加载
        public Image BG;
        public ResourcesModeEnum ModeEnum;                //资源加载类型
        private bool Next;
        
        ResourcesLoadingMode mode = null;
        Mode_Resources resourcesMode = null;
        Mode_AssetDatabase assetDatabaseMode = null;
        Mode_WWW wwwMode = null;
        Mode_UnityWebRequest unityWebRequestMode = null;
    
    
        private int textureIndex=1;                        // 图片路径索引
    
    
        void Awake()
        {
             resourcesMode = new Mode_Resources();
             assetDatabaseMode = new Mode_AssetDatabase();
             wwwMode = new Mode_WWW();
             unityWebRequestMode = new Mode_UnityWebRequest();
        }
        
       
        private IEnumerator PreviousPageBtnClick(ResourcesModeEnum modeEnum)
        {
            changeColor = true;
            yield return new WaitForSeconds(1);
            Next = false;
            ResourceModeChoice(modeEnum);
            colorChange = true; 
            Debug.Log("----上一页按钮点击----");
        }
        private IEnumerator NextPageBtnClick(ResourcesModeEnum modeEnum)
        {
            changeColor = true;
            yield return new WaitForSeconds(1);
            Next = true;
            ResourceModeChoice(modeEnum);
            colorChange = true;
            Debug.Log("----下一页按钮点击----");
    
        }
    
        /// <summary>
        /// 资源加载方式公共方法
        /// </summary>
        /// <param name="modeEnum">资源类型</param>
        private void ResourceModeChoice(ResourcesModeEnum modeEnum)
        {    
            switch (modeEnum)
            {
                case ResourcesModeEnum.ResourcesMode:
                    mode = resourcesMode;
                    ChangePage();
                    mode.ResourcesLoading(BG.sprite,textureIndex.ToString(), IsAsync);
                    break;
                case ResourcesModeEnum.WWWMode:
                    mode = wwwMode;
                    ChangePage();
                    StartCoroutine(Mode_WWW.WWWLoad(string.Format(@"file://{0}/{1}.jpg", Application.streamingAssetsPath, textureIndex.ToString()), WWWcallback));
                    break;
                case ResourcesModeEnum.AssetDatabaseMode:
                    mode = assetDatabaseMode;
                    ChangePage();
                    mode.ResourcesLoading(BG.sprite, string.Format("Assets/Image/{0}.jpg", textureIndex.ToString()), IsAsync);
                    break;
                case ResourcesModeEnum.UnityWebMode:
                    mode = unityWebRequestMode;
                    ChangePage();
                    StartCoroutine(Mode_UnityWebRequest.UnityWebRequestLoad(string.Format(@"file://{0}/{1}.jpg", Application.streamingAssetsPath, textureIndex), unityWebRequestcallback));
                    break;
                case ResourcesModeEnum.NULL:
                    mode.ResourcesUnLoading(BG.sprite);
                    BG.sprite = null;
                    break;
                default:
                    break;
            } 
        }
    
        /// <summary>
        /// 换页公共方法
        /// </summary>
        private void ChangePage()
        {
          
            if (Next == false) textureIndex--;
            if (Next == true) textureIndex++;
            mode.Img = BG;
            mode.MB = this.GetComponent<MonoBehaviour>();
           // mode.ResourcesLoading<Sprite>(BG.sprite, IsAsync);
    
           // mode.ResourcesUnLoading(BG.sprite);
        }
        private void ResourcesClick()
        {
            ModeEnum = ResourcesModeEnum.ResourcesMode;
            ResourceModeChoice(ModeEnum);
            SetTipText(TipText,"ResourcesMode");
        }
        private void AssetBundleBtnClick()
        {
            //TODO 
        }
        private void WWWBtnClick()
        {
            if (IsAsync == false)
            {
                ModeEnum = ResourcesModeEnum.NULL;
                SetTipText(TipText, "WWW没有同步加载");
            }
            else
            {
                ModeEnum = ResourcesModeEnum.WWWMode;
                ResourceModeChoice(ModeEnum);
                SetTipText(TipText, "WWWMode");
            }
           
        }
        private void AssetDatabaseBtnClick()
        {
            if (IsAsync == false)
            {
                ModeEnum = ResourcesModeEnum.AssetDatabaseMode;
                ResourceModeChoice(ModeEnum);
                SetTipText(TipText, "AssetDatabaseMode");
            }
            else
            {
                ModeEnum = ResourcesModeEnum.NULL;
                SetTipText(TipText, "AssetDatabase没有异步加载");   
            }
           
        }
        private void UnityWebRequestBtnClick()
        {
            if (IsAsync == false)
            {
                ModeEnum = ResourcesModeEnum.NULL;
                SetTipText(TipText, "UnityWebRequest没有同步加载");
            }
            else
            {
                ModeEnum = ResourcesModeEnum.UnityWebMode;
                ResourceModeChoice(ModeEnum);
                SetTipText(TipText, "UnityWebRequestMode");
            }
          
        }
        private void SynBtnClick()
        {
            IsAsync = false;
            SetTipText(IsAnsynText, "当前为同步加载方式");
        }
        private void AsynBtnClick()
        {
            IsAsync = true;
            SetTipText(IsAnsynText, "当前为异步加载方式");
        }
    
        /// <summary>
        /// WWW回调函数
        /// </summary>
        /// <param name="obj"></param>
        private void WWWcallback(object obj)
        {
            WWW www = obj as WWW;
            Texture2D tex = www.texture;
            BG.sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), Vector2.zero);
            Debug.Log("----callback调用----");
            www.Dispose();
        }
    
        /// <summary>
        /// UnityWebRequest回调函数
        /// </summary>
        /// <param name="obj"></param>
        private void unityWebRequestcallback(object obj)
        {
            UnityWebRequest request = obj as UnityWebRequest;
            Texture2D tex = DownloadHandlerTexture.GetContent(request);
            BG.sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), Vector2.zero);
            request.Dispose();
        }
    
        private void SetTipText(Text text,string str)
        {
            text.text = str;
        }
    }
    

    这次的demo让我认识自己很多的不足,接口,类的继承,同步与异步,资源的卸载,还有很关键的一点,写的很多代码不能复用,在资源加载器写了具体的实现,这些东西应该放在上层业务层去决定你要什么资源就加载什么资源,把加载的类型和路径传进去就行了。下次千万注意,单一职责原则,可以很大的降低代码的耦合。感谢龙哥,继续加油!

    展开全文
  • 4种动态加载JS的方法

    2019-05-05 02:08:54
    要实现动态加载JS脚本有4种方法: 1、直接document.write <script language="javascript"> document.write("<script src='test.js'><\/script>"); </script> 2、动态改变已有script的src...

    要实现动态加载JS脚本有4种方法:

    1、直接document.write

    <script language="javascript">

    document.write("<script src='test.js'><\/script>");

    </script>


    2、动态改变已有script的src属性

    <script src='' id="s1"></script>

    <script language="javascript">

    s1.src="test.js"

    </script>


    3、动态创建script元素

    <script>

    var oHead = document.getElementsByTagName('HEAD').item(0);

    var oScript= document.createElement("script");

    oScript.type = "text/javascript";

    oScript.src="test.js";

    oHead.appendChild( oScript);

    </script>


    这三种方法都是异步执行的,也就是说,在加载这些脚本的同时,主页面的脚本继续运行,如果用以上的方法,那下面的代码将得不到预期的效果。


    要动态加载的JS脚本:a.js,以下是该文件的内容。

    var str = "中国";

    alert( "这是a.js中的变量:" + str );


    主页面代码:

    <script language="JavaScript">

    function LoadJS( id, fileUrl )

    {

    var scriptTag = document.getElementById( id );

    var oHead = document.getElementsByTagName('HEAD').item(0);

    var oScript= document.createElement("script");

    if ( scriptTag  ) oHead.removeChild( scriptTag  );

    oScript.id = id;

    oScript.type = "text/javascript";

    oScript.src=fileUrl ;

    oHead.appendChild( oScript);

    }

    LoadJS( "a.js" );

    alert( "主页面动态加载a.js并取其中的变量:" + str );

    </script>


    上述代码执行后 a.js 的 alert 执行并弹出消息,


    但是 主页面产生了错误,没有弹出对话框。原因是 'str' 未定义,为什么呢?因为主页面在取 str 的时候 a.js 并没有完全加载成功。遇到需要同步执行脚本的时候,可以用下面的第四种方法。


    4、原理:用XMLHTTP取得要脚本的内容,再创建 Script 对象。

    注意:a.js必须用UTF8编码保存,要不会出错。因为服务器与XML使用UTF8编码传送数据。

    主页面代码:


    <script language="JavaScript">

    function GetHttpRequest()

    {

    if ( window.XMLHttpRequest ) // Gecko

    return new XMLHttpRequest() ;

    else if ( window.ActiveXObject ) // IE

    return new ActiveXObject("MsXml2.XmlHttp") ;

    }

    function AjaxPage(sId, url){

    var oXmlHttp = GetHttpRequest() ;

    oXmlHttp.OnReadyStateChange = function()

    {

    if ( oXmlHttp.readyState == 4 )

    {

    if ( oXmlHttp.status == 200 || oXmlHttp.status == 304 )

    {

    IncludeJS( sId, url, oXmlHttp.responseText );

    }

    else

    {

    alert( 'XML request error: ' + oXmlHttp.statusText + ' (' + oXmlHttp.status + ')' ) ;

    }

    }

    }

    oXmlHttp.open('GET', url, true);

    oXmlHttp.send(null);

    }

    function IncludeJS(sId, fileUrl, source)

    {

    if ( ( source != null ) && ( !document.getElementById( sId ) ) ){

    var oHead = document.getElementsByTagName('HEAD').item(0);

    var oScript = document.createElement( "script" );

    oScript.language = "javascript";

    oScript.type = "text/javascript";

    oScript.id = sId;

    oScript.defer = true;

    oScript.text = source;

    oHead.appendChild( oScript );

    }

    }

    AjaxPage( "scrA", "b.js" );

    alert( "主页面动态加载JS脚本。");

    alert( "主页面动态加载a.js并取其中的变量:" + str );

    </script>

    现在完成了一个JS脚本的动态加载。


    本文转自 gutaotao1989 51CTO博客,原文链接:http://blog.51cto.com/taoyouth/1737862


    展开全文
  • Java动态加载

    千次阅读 2018-04-21 09:45:29
    在讲解动态加载类之前呢,我们先弄清楚为什么要动态加载类,静态加载不行吗?我们可以看下面的实例:我在文件夹里写了Office.java 类和 Word.java类,如下:Office.javaclass Office{ public static void main...

    在讲解动态加载类之前呢,我们先弄清楚为什么要动态加载类,静态加载不行吗?我们可以看下面的实例:

    我在文件夹里写了Office.java 类和 Word.java类,如下:


    Office.java

    class Office{
    	public static void main(String[] args){
    		if(args[0].equals("Word")){
    			Word w = new Word();
    			w.start();
    		}
    		if(args[0].equals("Excel")){
    			Excel e = new Excel();
    			e.start();
    		}
    	}
    }

    Word.java

    class Word{
    	public void start(){
    		System.out.println("Word Start");
    	}
    }

    此时我们编译一下Office.java 文件:


    编译会报错,这当然没问题,因为确实没有写Excel.java类。

    但是这个Excel类我们一定会用到吗?如果这个Excel类需要很久才能写出来,在此我们也不能使用其他功能吗?后面如果一个类出问题了,这个系统是不是就瘫痪了?

    所以这就体现出动态加载类的好处了,动态加载类是按需加载的,你需要什么类,就加载什么类,一个类的状态,不会影响到另一个类的使用。

    所以我们可以将Office类改造如下:

    class Office{
    	public static void main(String[] args){
    		try{
    			Class c = Class.forName(args[0]);
    			Word w = (Word)c.newInstance();
    			w.start();
    		}
    		catch(Exception e){
    			e.printStackTrace();
    		}
    		
    	}
    }

    虽然我们还是没有写Excel类,但此时我们再编译Office.java文件,编译通过;

    运行一下:


    成功按照我们预想的结果运行,这样Word类就可以单独运行。

    但是这样还是不够规范,因为现在只能加载Word类类型的类文件,为了使程序有更好的扩展性,我们添加一个接口,只有让所有的功能类实现该接口即可。完善如下:

    OfficeAble.java

    interface OfficeAble{
    	public void start();
    }

    Office.java

    class Office{
    	public static void main(String[] args){
    		try{
    			Class c = Class.forName(args[0]);
    			OfficeAble oa = (OfficeAble)c.newInstance();
    			oa.start();
    		}
    		catch(Exception e){
    			e.printStackTrace();
    		}
    		
    	}
    }

    Word.java

    class Word implements OfficeAble{
    	public void start(){
    		System.out.println("Word Start");
    	}
    }

    这样改造之后,我后面要添加一个Excel类,乃至添加其他的类,只需要实现OfficeAble接口就可以了,不需要改动Office这个类和其他的功能类,扩展性很强,这就是动态加载的优势。

    展开全文
  • 动态加载资源简析和实践

    千次阅读 2017-08-12 18:59:03
    分析Resources创建过程,使用AssetManager动态加载子apk和获取资源。
  • 动态加载技术

    千次阅读 2020-03-06 23:24:45
    动态加载技术 动态加载技术可以让程序设计者脱离复杂的导入表结构,在程序空间中构造类似于导入表的调用引入函数机制。 Windows虚拟地址空间分配 在32位的机器上,地址空间从0x00000000~ 0xFFFFFFFF,总大小为4GB。...
  • Java的静态加载和动态加载区别

    千次阅读 2019-06-10 11:17:02
    转自:https://blog.csdn.net/minwenping/article/details/69367469?utm_source=itdadao&utm_medium=referral
  • JavaScript动态加载

    2018-05-03 12:42:27
    前言在做项目的过程中需要用到动态加载,如何做,刚开始很为难。什么是动态加载呢?比如说,添加便签时,在...正文再添加数据的时候,如果判断数据库中添加成功,这个时候就要动态加载到界面。代码://若添加成功 ...
  • 最近在做项目的时候遇到了这样一个问题,给用ajax动态加载出来的内容添加点击事件,但是怎么都触发不了,经过查询试验总结出正确的写法 在jquery1.7之前的版本中用的是live()方法,但是live()方法在1.7中已经不建议...
  • 比如item中的linearLayout根据数据动态addView。 只要在添加之前linearLayout.removeAllViews();就行。
  • Unity3d 动态加载材质方法

    万次阅读 2014-06-08 20:39:13
    先上代码: Texture img = (Texture)Resources.Load("LedPicture"); GameObject.Find("Led").renderer.material.mainTexture = img; ...1、"LedPiture"是一张图片(LedPicture.png) ...2、这两句话是将Led这个Object的...
  • Android中ListView动态加载数据

    万次阅读 热门讨论 2011-03-24 17:05:00
    Android中ListView动态加载数据介绍。
  • Qt学习篇(二):Qt加载动态

    千次阅读 2018-05-11 09:54:18
     Qt加载动态库分为显式加载与隐式加载,现在先来了解下链接库:(1)动态链接库,通常有.h .lib .dll三个文件,功能实现在dll中(有时.lib会以***.dll.a的形式显示,两者意义相同);(2)静态链接库,通常有.h ....
  • Cocos Creator 动态添加图片函数

    万次阅读 2016-12-07 15:54:33
    调用方法传入节点和图片地址this._addSpritePic(this.bg, "pic/map/1")方法里将传入图片地址对应图片加载到对应节点(必须是cc.Sprite节点 !!!) _addSpritePic: function(container, addres){ cc.loader.loadRes...
  • JavaScript实现页面动态添加图片

    万次阅读 2017-11-30 11:13:09
    Document ... window.onload = function(){ document.body.addEventListener('click', function () { var myParent = document.getElementById("Banner"); var myImage = document.cre
  • QT 动态加载失败

    千次阅读 2014-11-12 14:39:51
    手动封装DLL,然后通过Qlibrary 加载,老是提示
  • bootstrap 模态框动态加载数据

    万次阅读 2015-05-13 14:51:30
    1.页面中添加modal  aria-labelledby="myModalLabel" aria-hidden="true">     //内容动态填充   2.数据格式。页面动态生成a 标签 "+ row.title+""; 3.单击事件  function ...
  • 使用swiper动态加载数据遇到的坑

    万次阅读 2020-06-02 16:55:42
    使用swiper做轮播官网上的用法都很简单,因为案例的数据是写死在html里的,这样的情况下swiper放在页面的任意位置初始化都可以,但是实际开发中,很多时候轮播的数据我们是动态获取的,所以swiper结合动态加载数据的...
  • ResourceDictionary esriDictionary = new ResourceDictionary(); Application.LoadComponent(esriDictionary, new Uri("ThsEmergencySystem;component/Styles/esriSymbol.xaml", UriKind.Relative));...
  • 比如我想先显示一个奶牛模型,显示完之后我又要在牛模型不消失的情况下再加载一个飞机模型并显示,相当于显示了两个模型,怎么实现????
1 2 3 4 5 ... 20
收藏数 1,488,883
精华内容 595,553
关键字:

动态加载