00:00
好,接下来呢,我们讲解第六个例子啊,多图请求及这个图片复用啊,可以请求多张图片啊,包括这个数列图啊等等,还有这个图片的一个复用的情况,那么接下来呢,我们还是同样的看一下我们最终要实现什么样的效果。啊,点击这个多图及图片请求复用啊,就会来到这个页面,这个页面呢,整体是一个t bar中间一个啊simple啊下面呢是这个先显示低分辨率的图,然后再显示这个高分辨率的图啊,这个呢是这个本地缩略图预览啊,可以先加载这个本地的缩略图啊,之后再加载图片,下面这个呢,是这个本地图片的一个复用啊,那好点击这个button。这样呢,就是它先显示一个低分辨率的,再显示高分辨率的啊。这个呢,是这个本地数列图预览啊数列图。然后这个是本地复用啊,其实复用的是同一张图片,给它切过来再点复用,嗯,还是这个图片啊,这个呢,只有在这个网络不好的情况下啊,看的效果很明显,现在如果网络正常的情况下,其实你是看不出来什么效果的啊,它很快就加载完毕了啊好,接下来我们就开始啊,实现那个布局啊,上面一个带棒,中间一个一面中间这一个S,下面上个button。
01:19
来到代码中。多组请求又一个intend传进来,一个上下文点this,维斯卡MU,多图请求S。创建一下。然后呢,我们把这个布局啊,同样还是占过来。
02:15
粘过来之后带着大家再看一下啊,整体的是一个垂直的线性布局啊,垂直方向线性布局,中间这个地方呢,是一个啊T把下面这个是simple,再往下就是三个啊button啊就搞定了,接下来我们看一下这个代码。Out,加S生成一下。这三个八层我们不要啊,这个不要。左手画一下标题。Title will.set test啊标题,那我们看一下这标题叫什么?多图请求及图片复用。
03:03
这图片不用啊。接下来我们处理一下这三个button at啊,CLICK2点,ID点。第一个八。没有啊,那这个是什么呢?先显示这个低分辨率的图,然后再显示高分辨率的图。接下来往下快速的生成另两个。那这个分别是这个本地缩略图预览。
04:10
这个是本地图片复用。好,接下来呢,这个准备工作啊,我们就做完了,下面呢,我们开始写这个代码啊,先显示这个低分辨率的图,然后呢,再显示这个高分辨率的图啊,那我们先看一下代码啊是什么样的,大家读一下。啊,也非常简单,首先还是从下面开始读,首先拿到这个view对象,点set一个controller啊,拿到这个controller之后,这个怎么产生的呢?是通过这个free卡点new这个controller builder啊,下面呢,这个是set low啊,Resource里面的view啥意思?哎,就是设置一个低分辨率的这个图啊,里面的是一个image request啊,点from u传进去这个低分辨率这张图片的UR地址就可以了。
05:19
下面这个呢,是set image request,也就是你真正的要加载这张图片,那么这个是这个resource UI,再往下呢,就是set,这个order controller啊,也就是这个啊,对了,减少这个内存啊,复用下面呢,这是builder啊,就搞定了,你看就是这么一句两句啊,其实三句就搞定了。MVMVC啊,那好,我们实验一下代码,这里面拿到这个view对象。第二。
06:00
Set controller里面传进一个controller。Out加回车啊,生成一下,那么通过这个free对象点又一个draw will controller,直接先build啊搞定,下面呢一个一个写第2SET low啊,Result request,那这里面呢,就要传递一个low。我们创建一下奥加会特pass。啊,这里面不行啊,这里面直接可以调一面request from u啊,然后呢,将它乘进来。最后穿着它这就就来了啊。
07:00
u.pass加上这个地址存进来,我们找一下。啊,这个是低分辨率的图片。接下来呢,我们来设置一下这个高分辨率图片,那就是点set。Site里面request啊里面呢,还是同样的需要一个request from u,创建一个high hi DH UR,那把它生成一下二加回车。等于u.pass将这个地址传进来。
08:01
啊,这个呢,是这个低分辨率的图片地址,这个是高分辨率的这个图片的地址啊,如果往网速慢的时候,他可能先把它加载过来啊,之后呢再把它啊加载过来是这个过程,那我们可以运行一下啊,看看这个效果。找到这个弗斯卡啊,下面这个多图请求,第一个低分辨率图啊,然后高分辨图啊,在这个目前还看不出来明显的效果啊,看不出来啊,但是呢,这个功能是可以实现的啊,可以实现。好啊,备注一下。加载图片这个呢,是控制加载图片啊,这么三步MVC的结构啊搞定,接下来呢,我们开始啊,使用这个第二个本地数列图啊预览啊,同样我们还是要看一下代码啊是怎么实现的。
09:12
这里面从下往下看,第一步啊,Set一个controller,那么这个controller同样啊,也是通过这个卡啊,你这个builder这里面呢,Set这个image request,也就是这个图片的这个请求啊,平繁请求下面是order controller还是服用啊,都是通用的,就是这个地方set request,那么这个request啊,怎么产生的呢?这里有一个image request builder.new new,一个builder with resource u RA啊传递一张图片的地址之后呢,是set lower啊它啊这个这也就是缩列图的意思,缩列图是否是能啊,那如果它是能了之后,你就可以加载这张图片啊,这个图片呢,是这个。本地的图片啊,我这个是手机里已经存了这张美女的图,在这个讲glad那个那节课的时候已经存进去了啊,所以呢啊也是还是非常简单的,就是采用这种啊MVC这种结构,那好我们还是实验一下,实验一下代码。
10:16
同样的,加载这个图片,点set controller传进去一个controller。增长一下奥加回车。等于ris卡点一个。然后点build。再往下。第二。Set em is request里面需要一个request request,那我把这个request生成一下,告诉加回车。好,Em image request builder点又一个builder with resource里面呢,需要传递一个UR啊,那我就给他一个UR。
11:10
之后呢,啊出来出来呢点build啊正常这样就结束了,那我们要设置一下这个数列图,点set local啊symbol,呃,Preview en enable,如果这个示列图让它只能,那么就给它设置成啊这个true,那么需要一个UI。生成一下这个UI啊,它是本地的啊本地的UI,那么这里面呢,就需要啊u r.from five啊以文件的这个呃,UI的形式啊传进来,那就来一个file呗,啊file出现需要一个地址environment.get。啊,Stories,也就是外部SD卡这个存储路径,加上我这里有一张图片啊,这张图片就是美女1.jpg啊,美女1.jpg,这个是图片的地址。
12:10
啊,这个是控制图片这个请求。加载图片的请求,下面这是控制图片的加载,最后这个是加载图片。非常清晰啊,三层第一层就是view这个显示啊,控制图片加载啊,这个显示图片,那这个呢,是这个如何控制一张图片啊进行加载啊,这里包括这个路径啊,那这个request加上这个UI,其实就是这个啊摩托城啊,数据业务逻辑啊,数据啊,给你提供数据的。那好,我们运行一下啊,同样还是看一下这个效果。
13:09
点击这个FS卡。啊,多图请求及复用本地数列图,哎,这个里面呢,有一张数列图这个view啊,这样就加载过来了,接下来呢,我们讲第三个本地这个图片的复用啊,同样我们带大家看一下这个代码。这个啊,这个呢,同样还是从下往上看啊,还是set这个controller啊,Controller呢,从哪来呢?还是从这来的啊,这里面就这地方不一样啊,它set是一个first visible image request,第一个啊,可见的这个image也是头像啊request,那么这个request呢,它是一个数组啊,这里有数组啊,这数组里面呢,有两个request,一个REQUEST1,一个REQUEST2啊,这两个request分别是对应的两张图片的这个地址啊,两张图片的地址。
14:02
那上面是UR1啊UR2啊,那什么意思呢?本地图片这个复用啊,在请求之前还会去内存中请求一张图片啊,没有才会去这个啊本地,最后去网络啊,你是啥意思,先去这个本地去找一张图片,如果这张图片没有,就是去这儿去找,如果这个本地没有这张美女这张图片,那么他就去网络去加载加载图片啊,那么这个代码呢?呃,我就不带大家写了啊,直接带过来,一会大家运行看一下效果。这个备注一下加载图片,这个呢是控制加载图片。啊,上面呢是具体的去啊加载图片请求加载图片,那么这里啊有两个地址,这个呢,我这个本身呢,这个SD卡中是有这个美女图片的,那么它是不是就应该显示这个美女图片的啊,那我们先运行一下,如果没有这美女图片,他才会去网络请求这张图片啊,那我先运行一下,看看是不是能把这个美女图片请求回来。
15:25
好找到这个FS。然后这个是多重请求,第三个本地图片复用,诶一点击是不是在这个美体图片就找到了,哎,那么我把它修改一下。我把它干掉,那么是不是我这个ID卡上就没有这图片了,那么他是否去会去网络中请求这张图片呢?我们再运一下看效果。嗯。Frisco。然后多图请求点击这个本地图片复用。
16:02
看这个是网络的图片吗?哎,他是不是没有把那个美体图片拿拿到啊,啊没有拿到他就会去网络图片,这样的话,对这个图片这个加载啊是不是啊,起到非常好的作用啊,啊非常好用。
我来说两句