导航:首页 > APP软件 > 安卓开发gif

安卓开发gif

发布时间:2023-02-09 10:03:25

1. android怎么实现播放gif

以下是关于Android如何播放Gif动画的内容,此内容在网上已经很多。在《疯狂Android讲义》中李刚也有所介绍和相关的源代码
1.android实现播放gif动画,如何将gif动画打散,将gif图片打散本文介绍两个工具,可以帮我们打散图片:
gifsplitter2.0 下载地址: http://yunpan.cn/QbvwWIYVeWrPE
easygifanimator 下载地址: http://yunpan.cn/QbvwWd8Zy3BnF
第一个软件分割图片都是bmp图片,图片比较大,这里不推荐使用,本站推荐使用第二种软件
以上两种软件的使用方法本站不在详细赘述,本站详细介绍安卓开发中使用的代码
2.android实现播放gif动画,假设我们已经得到了gif动画被打散的图片,分别为:x0.png、x1.png、x2.png、 x3.png,

2. 安卓中如何添加显示gif动态图片

大家都知道,Android开发模拟器为了节省内存,一般不支持直接显示gif图片,即使你强制设置了,也只会显示图片的第一帧。看到网上也有许多的方法,来实现此功能,可都比较的繁琐,需要修改android源代码来实现或者用gif解析器来实现。在此文章中,这里教大家一种比较简洁的一个方法,你可以把这个类当做是一种工具类。用的时候,直接搬到程序里面,更改下图片的资源,就可以非常轻松的显示gif图片了。


步骤1:看一下这个工具类的实例代码:MyGifView.java

import android.content.Context;

import android.graphics.Canvas;

import android.graphics.Movie;

import android.util.AttributeSet;

import android.view.View;

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));

}

@Override

protected void onDraw(Canvas canvas) {

long curTime=android.os.SystemClock.uptimeMillis();

//第一次播放

if (movieStart == 0) {

movieStart = curTime;

}

if (movie != null) {

int raction = movie.ration();

int relTime = (int) ((curTime-movieStart)%raction);

movie.setTime(relTime);

movie.draw(canvas, 0, 0);

//强制重绘

invalidate();

}

super.onDraw(canvas);

}

}

此工具类中,只做了2件事情。1,构造方法;2,重写了onDraw()方法。大家以后用的话,只需拷贝此类到你的工程下即可起作用。


步骤2:布局文件代码 activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/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图片显示了~~

3. Android开发怎样显示gif格式的图片

android中现在没有直接显示gif的view,只能通过mediaplay来显示,且还常常不能正常显示出来,为此写了这个gifview,其用法和imageview一样
使用方法:
1-把GifView.jar加入你的项目。
2-在xml中配置GifView的基本属性,GifView继承自View类,和Button、ImageView一样是一个UI控件。如:
<com.ant.liao.GifView android:id="@+id/gif2"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:paddingTop="4px" android:paddingLeft="14px" android:enabled="false" />

3-在代码中配置常用属性:
// 从xml中得到GifView的句柄
gf1 = (GifView) findViewById(R.id.gif1);
// 设置Gif图片源
gf1.setGifImage(R.drawable.gif1);
// 添加监听器
gf1.setOnClickListener(this);
// 设置显示的大小,拉伸或者压缩
gf1.setShowDimension(300, 300);
// 设置加载方式:先加载后显示、边加载边显示、只显示第一帧再显示
gf1.setGifImageType(GifImageType.COVER);

阅读全文

与安卓开发gif相关的资料

热点内容
linux网络socket编程 浏览:926
战争雷霆客户端在哪个文件里 浏览:847
如何授权点淘app读取步数 浏览:671
sonarqube代码负责度 浏览:116
step7左面编程框怎么调出来 浏览:348
wordpress文章字号 浏览:117
xp电脑正在识别网络怎么回事 浏览:30
a9加密文件在哪里找 浏览:69
从微信传文件到电脑上吗 浏览:684
更改文件名后 浏览:443
如何更改系统用户名磁盘文件 浏览:595
摄影测量处理数据需要哪些参数 浏览:45
itunes怎样单独恢复应用程序 浏览:788
华为手机企业微信下载的文件存放在哪里 浏览:965
源文件名太长什么意思 浏览:573
linux文件复制到u盘 浏览:141
4558升级代换 浏览:589
泰国支持什么网络 浏览:939
ps铅笔画用什么工具上色 浏览:108
5s升级ios93会不会卡 浏览:775

友情链接