如何在Android中播放GIF文件?

发布于 2024-12-03 03:24:33 字数 134 浏览 0 评论 0原文

我想在当前活动中播放 GIF 文件。

我有一个 XML 文件,其中有一个布局。

我想在同一个班级的 Activity 中播放 GIF。

有没有一种简单的方法可以在 Activity 类中播放 GIF 文件?

I want to play a GIF file in my current activity.

I have an XML file in which there is a layout.

I want to play the GIF in the same class Activity.

Is there a simple way to play a GIF file in an Activity class?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

时光磨忆 2024-12-10 03:24:34

您可以使用网络视图。
我将用一个例子来展示:

//My activity
public class Gift_Loading extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        Gif_loading_View view = new Gif_loading_View(this); 
        setContentView(view);
    }

}

//the webView
public class Gif_loading_View extends WebView{

    public Gif_loading_View(Context context) {

        super(context);     
        loadUrl("file:///android_asset/loading_position.html");

        } 
}

在资产文件夹中添加这个html文件:

<html>
<body bgcolor="white">
    <table width="100%" height="100%">
        <tr>
            <td align="center" valign="center">                
                <br/>
                <br/>
                <br/>
                <font size="6">Please wait...</font>
                <br/>
                <br/>
                <img src="cyclist_loading.gif" />

            </td>
        </tr>
    </table>
</body>

You can use a webView.
I will show with an example:

//My activity
public class Gift_Loading extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        Gif_loading_View view = new Gif_loading_View(this); 
        setContentView(view);
    }

}

//the webView
public class Gif_loading_View extends WebView{

    public Gif_loading_View(Context context) {

        super(context);     
        loadUrl("file:///android_asset/loading_position.html");

        } 
}

In the assets folder add this html file:

<html>
<body bgcolor="white">
    <table width="100%" height="100%">
        <tr>
            <td align="center" valign="center">                
                <br/>
                <br/>
                <br/>
                <font size="6">Please wait...</font>
                <br/>
                <br/>
                <img src="cyclist_loading.gif" />

            </td>
        </tr>
    </table>
</body>
﹏半生如梦愿梦如真 2024-12-10 03:24:34

Android不支持GIF动画文件的播放。如果您需要播放它们,那么您需要将它们分成几帧,然后一帧一帧地制作动画。

这将让你分割 GIF 文件
http://www.xoyosoft.com/gs/

Android doesn't support the playing of animated GIF files. If you need to play them then you need to break them apart into frames, and animate each frame one by one.

This will let you split up the GIF file
http://www.xoyosoft.com/gs/

琉璃繁缕 2024-12-10 03:24:34

这里有一个示例,其中创建自定义 AnimatedGifView 类。

它利用android.graphics.Movie类,并重写onDraw方法来定期重绘视图。以下是摘录:

gifInputStream = context.getResources().openRawResource(R.drawable.myGIFImage);
gifMovie = Movie.decodeStream(gifInputStream);
gifMovie.setTime((int)movieRunDuration);
gifMovie.draw(canvas, 0, 0);

将动画 GIF 转换为然而,AnimationDrawables

There's an example here in which a custom AnimatedGifView class is created.

It makes use of the android.graphics.Movie class, and overrides the onDraw method to redraw the view periodically. Here's an excerpt:

gifInputStream = context.getResources().openRawResource(R.drawable.myGIFImage);
gifMovie = Movie.decodeStream(gifInputStream);
gifMovie.setTime((int)movieRunDuration);
gifMovie.draw(canvas, 0, 0);

It's probably more appropriate to convert animated GIFs to AnimationDrawables, instead, however.

煮茶煮酒煮时光 2024-12-10 03:24:34
<pl.droidsonroids.gif.GifTextView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/first"
    />

使用代码和你的gif文件放入drawable文件夹中......
并首先将名称更改为您的 gif 文件名。

<pl.droidsonroids.gif.GifTextView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/first"
    />

Use the code and your gif file put into the drawable folder....
and change the name first with your gif file name.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文