我有一个动画gif图像,我希望将其显示为相对布局的背景。我使用了一个由视图扩展的活动,并使用了电影类,但它没有解决我的问题。请注意任何建议。
LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:components="http://schemas.android.com/apk/res/com.example.YourPakageName"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<com.example.YourPakageName.GIFView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
components:src="@drawable/congratulations" />
</LinearLayout>
答案 0 :(得分:2)
你可以使用Glide https://github.com/bumptech/glide
Glide.with(context)
.load(imageUrl)
.asGif()
.placeholder(R.drawable.loading2)
.crossFade()
.into(imageView);
答案 1 :(得分:1)
答案 2 :(得分:0)
是的,您可以设置gif图像,但这不会为您的gif图像设置动画。您需要将gif图像显式提取到所有帧中,然后使用动画将图像设置为gif。 click hear
答案 3 :(得分:0)
如果您想将按钮放在GIF播放之上,这就是代码。 在RelativeLayout下放置第一个带有android的ImageView:layout_width =“match_parent” 机器人:layout_height = “match_parent” 然后根据您的要求另一个ImageView或Button。最后一个显示在GIF之上。然后使用Glide Library来显示。
<RelativeLayout
android:id="@+id/rel_music_play"
android:layout_width="wrap_content"
android:layout_height="180dp"
>
- <ImageView
android:id="@+id/imageViewGifPlaying"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:layout_centerInParent="true"
android:src="@drawable/ray_music_icon"
/>
<ImageView
android:id="@+id/btn_play"
android:layout_width="wrap_content"
android:layout_height="60dp"
android:layout_centerInParent="true"
android:src="@drawable/play_round_icon" />
</RelativeLayout>
Glide.with(this)
.load(R.drawable.stream_animation)
.asGif()
.into(imageViewGifPlaying);