androidandroid glide加载giff的时候先加载一张缩略图 点击加载动图怎么实现的

Android开发【12-21视频贴】Glide加载gif图,_android开发吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:115,636贴子:
Android开发【12-21视频贴】Glide加载gif图,收藏
求大手解决啊,卡了好久了
达内android开发,开启安卓“薪”时代,前沿安卓课程,120天速成安卓高级工程师,达内android开发,短期打造编程高手!点击申请-达内免费试学&&
标题怎么没了一半,是播放gif图出现白块,卡顿,求大手解决啊
先测量图片大小 然后在重新给ImageView设宽高,如果Gif图太大了就加上本地缓存
登录百度帐号推荐应用11:16 提问
Android加载网络GIF图片
我用URLConnection加载网络的GIF图片,然后播放,图片大小在3M-5M左右,第一次加载的时候,要花费30-40秒左右,但我观察新浪微博的GIF加载比较快,
基本10秒左右就完成的,保存原图后,图片也在4M左右,想问一下,是怎么实现的?都是第一次加载,缓存中还没有
按赞数排序
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!
建议你用Glide,Google官方推荐的,适合Android加载gif
建议你用Glide,Google官方推荐的,适合Android加载gif
其他相似问题Android中轻松显示Gif图片
教你轻松显示Gif图片
大家都知道,Android开发模拟器为了节省内存,一般不支持直接显示gif图片,即使你强制设置了,也只会显示图片的第一帧。看到网上也有许多的方法,来实现此功能,可都比较的繁琐,需要修改android源代码来实现或者用gif解析器来实现。在此文章中,这里教大家一种比较简洁的一个方法,你可以把这个类当做是一种工具类。用的时候,直接搬到程序里面,更改下图片的资源,就可以非常轻松的显示gif图片了。
步骤1:看一下这个工具类的实例代码:MyGifView.java
import&android.content.C
import&android.graphics.C
import&android.graphics.M
import&android.util.AttributeS
import&android.view.V
public&class&MyGifView&extends&View{
private&long&movieStart;
private&Movie&movie;
&&&&//此处必须重写该构造方法
public&MyGifView(Context&context,AttributeSet&attributeSet)&{
super(context,attributeSet);
//以文件流(InputStream)读取进gif图片资源
movie=Movie.decodeStream(getResources().openRawResource(R.drawable.keyboard));
protected&void&onDraw(Canvas&canvas)&{
long&curTime=android.os.SystemClock.uptimeMillis();
//第一次播放
if&(movieStart&==&0)&{
movieStart&=&curT
if&(movie&!=&null)&{
int&duraction&=&movie.duration();
int&relTime&=&(int)&((curTime-movieStart)%duraction);
movie.setTime(relTime);
movie.draw(canvas,&0,&0);
//强制重绘
invalidate();
super.onDraw(canvas);
此工具类中,只做了2件事情。1,构造方法;2,重写了onDraw()方法。大家以后用的话,只需拷贝此类到你的工程下即可起作用。
步骤2:布局文件代码&activity_main.xml
&LinearLayout&xmlns:android="/apk/res/android"
&&&&xmlns:tools="/tools"
&&&&android:layout_width="match_parent"
&&&&android:layout_height="match_parent"&&
&&&&&TextView&
&&&&&&&android:text="====Gif图片测试布局===="
&&&&&&&&android:layout_height="wrap_content"
&&&&&&&android:layout_width="wrap_content"
&&&&&&com.example.showgifimage.MyGifView&
&&&&&&&android:id="@+id/iv"
&&&&&&&android:layout_height="wrap_content"
&&&&&&&android:layout_width="wrap_content"
&&&&&&&android:layout_margin="20dp"
&&&&&&&/&&
&/LinearLayout&
布局文件中,注意的是:标签的设置&&com.example.showgifimage.MyGifView/&.
格式:包名+.类名
步骤3:主activity中调用
public&class&MainActivity&extends&Activity&{
&&&&@Override
&&&&public&void&onCreate(Bundle&savedInstanceState)&{
&&&&&&&&super.onCreate(savedInstanceState);
&&&&&&&&setContentView(R.layout.activity_main);
&&&&就这么轻松的把Gif图片显示了~~
投票已截止
登录之后投票,你也可以出现在此
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。你正在使用的浏览器版本过低,将不能正常浏览和使用知乎。问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
最近写gif浏览的app,暂时用的glide加载gif ,试了Fresco感觉速度不如glide,看到一些app是先加载缩略图,点击在加载动图,感觉体验不错,想问一下是怎么实现的?是服务端那边处理生成一张缩略图吗?还是我这边处理?如果我这边处理是怎么处理?
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
服务端存一张gif图,请求时发送该动图的地址。加载动态图第一帧:
Glide.with(context).load(url).asBitmap().into(imageview);
点击事件加载动态图:
Glide.with(context).load(url).asGif().into(imageview);
分享到微博?
你好!看起来你挺喜欢这个内容,但是你还没有注册帐号。 当你创建了帐号,我们能准确地追踪你关注的问题,在有新答案或内容的时候收到网页和邮件通知。还能直接向作者咨询更多细节。如果上面的内容有帮助,记得点赞 (????)? 表示感谢。
明天提醒我
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:
扫扫下载 App

我要回帖

更多关于 android 加载gif 的文章

 

随机推荐