当你试图从资源目录加载gif时,它没有动画,你应该使用GifWebView.

activity_main.xml中

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:background="#da4040" >

android:id="@+id/webviewActionView"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:minHeight="200dp"

android:minWidth="200dp"

android:scrollbars="none" >

MainActivity.java

package com.test2;

import java.io.InputStream;

import android.app.Activity;

import android.os.Bundle;

import android.webkit.WebView;

import android.webkit.WebViewClient;

public class MainActivity extends Activity {

WebView webviewActionView;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

InputStream stream = null;

try {

stream = getAssets().open("loading2.gif");

} catch (Exception e) {

e.printStackTrace();

}

webviewActionView = (WebView)findViewById(R.id.webviewActionView);

webviewActionView.setWebViewClient(new MyWebViewClient());

webviewActionView.getSettings().setJavaScriptEnabled(true);

GifWebView view = new GifWebView(this, stream);

webviewActionView.addView(view);

}

private class MyWebViewClient extends WebViewClient {

public boolean shouldOverrideUrlLoading(WebView view, String url) {

view.loadUrl(url);

return true;

}

}

}

GifWebView.java

package com.test2;

import java.io.InputStream;

import android.content.Context;

import android.graphics.Canvas;

import android.graphics.Color;

import android.graphics.Movie;

import android.os.SystemClock;

import android.view.View;

public class GifWebView extends View {

private Movie mMovie;

InputStream mStream;

long mMoviestart;

public GifWebView(Context context, InputStream stream) {

super(context);

mStream = stream;

mMovie = Movie.decodeStream(mStream);

}

@Override

protected void onDraw(Canvas canvas) {

canvas.drawColor(Color.TRANSPARENT);

super.onDraw(canvas);

final long now = SystemClock.uptimeMillis();

if (mMoviestart == 0) {

mMoviestart = now;

}

final int relTime = (int) ((now - mMoviestart) % mMovie.duration());

mMovie.setTime(relTime);

mMovie.draw(canvas, 10, 10);

this.invalidate();

}

}

将“loading2.gif”文件放在资源目录中.

从下面的链接下载这个完整的deom

webview gif android,使用WebView android读取Gif图像相关推荐

  1. android使用webview上传文件,Android项目中如何在webview页面中上传文件

    Android项目中如何在webview页面中上传文件 发布时间:2020-11-26 15:56:27 来源:亿速云 阅读:68 作者:Leah 本篇文章为大家展示了Android项目中如何在web ...

  2. android webview 多文件上传,Android中的webview支持页面中的文件上传实例代码

    Android webview在默认情况下是不支持网页中的文件上传功能的: 如果在网页中有,在android webview中访问时也会出现浏览文件的按钮 但是点击按钮之后没有反应... 那么如何能够 ...

  3. Android中WebView加载sdcard中的html时提示:ERR_FILE_NOT_FOUND和ERR_ACCESS_DENIED

    场景 Android中WebView加载sdcard中的html显示: Android中WebView加载sdcard中的html显示_BADAO_LIUMANG_QIZHI的博客-CSDN博客 在实 ...

  4. Android中WebView加载sdcard中的html显示

    场景 Android中使用WebView加载本地html并支持运行JS代码和支持缩放: Android中使用WebView加载本地html并支持运行JS代码和支持缩放_BADAO_LIUMANG_QI ...

  5. android 双 webview,Android webview加载页面

    释放双眼,带上耳机,听听看~! Android webview加载页面 private WebView webView; public void init() { webView = (WebView ...

  6. Android原生webView概述

    1.基本使用     首先要添加网络权限<uses-permission android:name="android.permission.INTERNET"> 从An ...

  7. Android【WebView】

    WebView全面解析 简介 WebView是android中一个非常重要的控件,它的作用是用来展示一个web页面.它使用的内核是webkit引擎,4.4版本之后,直接使用Chrome作为内置网页浏览 ...

  8. Android入门——WebView使用及Java和JavaScript交互小结

    文章大纲 引言 一.WebView 概述 二.WebView的常用的方法 1.构造方法 2.其他常用方法 3.WebSettings常用的方法 三.WebView的应用 1.使用WebView的基本步 ...

  9. android嵌套webview调原生相机相册

    //初始化webViewprivate void initWebView() {//从布局文件中扩展webViewwebView = (WebView) this.findViewById(R.id. ...

最新文章

  1. HowTO: Create an Event Log Source in code, without the Permission errors
  2. 报错: eclipse加载maven工程提示pom.xml无法解析org.apache.maven.plugins:maven-resources-plugin:2.3.2...
  3. 微软模拟飞行2020服务器多少内存,《微软模拟飞行2020》配置公开,想玩爽还需玩家加大投入...
  4. Tableau可视化分析实战系列浏览 Tableau 环境(五) -视图的部件
  5. canal介绍和使用docker安装canal
  6. 合并两个无序数组java_88. 合并两个有序数组
  7. 利用websocket实现一对一聊天
  8. php设置mysql查询编码,php连接mysql时怎么设置编码方式
  9. python算法详解豆瓣_豆瓣爬虫实践-python版
  10. OpenStack基金会 ( OSF)演进为开源基础设施基金会
  11. 为何需要商业智能BI软件
  12. excel第一次打开报错 向程序发送命令时出错 多种解决办法含终极解决方法
  13. tomcat配置项目的接种方式
  14. 电子科技大学第九届ACM趣味程序设计竞赛(热身赛)题解
  15. MAX262程控滤波器
  16. 超级计算机x5670,x5670相当于什么cpu
  17. 如何在子控件上使用WS_EX_LAYERED
  18. html中border的作用,border在html中是什么意思
  19. JAVA微服务架构视频教程
  20. Python爬虫入门(一)(适合初学者)

热门文章

  1. cdi name 日志_CDI 2.0更新
  2. ajax请求的五个步骤_监控整个页面,非AJAX,需要通知
  3. power指令集 mysql_PowerPC汇编指令集简析
  4. 如何实现Word、PDF,TXT文件的全文内容检索?
  5. 一次微服务与IoT的深度探秘与实战
  6. JDK 14 里的调试神器了解一下?
  7. 戴尔官网全网抄底价! 企业级高性能机Vostro仅¥1,999!更有额外福利等你来领!...
  8. 自律到极致-人生才精致:第5期
  9. 使用Oauth2实现微服务的安全保护
  10. 来谈下高并发和分布式中的幂等处理