dialog中帧动画只显示一帧的问题
来源:互联网 发布:网站seo推广优化 编辑:程序博客网 时间:2024/05/23 20:25
做了个简单的帧动画,在onCreate方法中start,发现只能看到第一帧
stackoverflow 上发现一个解决办法
或者在Activity中的onWindowFocusChanged方法中start
- <?xml version="1.0" encoding="utf-8"?>
- <animation-list xmlns:android="http://schemas.android.com/apk/res/android"
- android:oneshot="false" >
- <item
- android:drawable="@drawable/fire01"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire02"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire03"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire04"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire05"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire06"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire07"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire08"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire09"
- android:duration="200"/>
- </animation-list>
- <?xml version="1.0" encoding="utf-8"?>
- <animation-list xmlns:android="http://schemas.android.com/apk/res/android"
- android:oneshot="false" >
- <item
- android:drawable="@drawable/fire01"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire02"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire03"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire04"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire05"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire06"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire07"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire08"
- android:duration="200"/>
- <item
- android:drawable="@drawable/fire09"
- android:duration="200"/>
- </animation-list>
- <RelativeLayout 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"
- >
- <ImageView
- android:id="@+id/fire_img"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerInParent="true"
- android:background="@drawable/fire_anim" />
- </RelativeLayout>
- <RelativeLayout 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"
- >
- <ImageView
- android:id="@+id/fire_img"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerInParent="true"
- android:background="@drawable/fire_anim" />
- </RelativeLayout>
- ImageView fireImg = null;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- ImageView fireImg = (ImageView) findViewById(R.id.fire_img);
- final AnimationDrawable animDrawable = (AnimationDrawable) fireImg
- .getBackground();
- animDrawable.start();
- }
- ImageView fireImg = null;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- ImageView fireImg = (ImageView) findViewById(R.id.fire_img);
- final AnimationDrawable animDrawable = (AnimationDrawable) fireImg
- .getBackground();
- animDrawable.start();
- }
stackoverflow 上发现一个解决办法
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- ImageView fireImg = (ImageView) findViewById(R.id.fire_img);
- final AnimationDrawable animDrawable = (AnimationDrawable) fireImg
- .getBackground();
- fireImg.post(new Runnable() {
- @Override
- public void run() {
- animDrawable.start();
- }
- });
- }
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- ImageView fireImg = (ImageView) findViewById(R.id.fire_img);
- final AnimationDrawable animDrawable = (AnimationDrawable) fireImg
- .getBackground();
- fireImg.post(new Runnable() {
- @Override
- public void run() {
- animDrawable.start();
- }
- });
- }
或者在Activity中的onWindowFocusChanged方法中start
- @Override
- public void onWindowFocusChanged(boolean hasFocus) {
- super.onWindowFocusChanged(hasFocus);
- if (fireImg != null) {
- AnimationDrawable animDrawable = (AnimationDrawable) fireImg
- .getBackground();
- animDrawable.start();
- }
- }
- @Override
- public void onWindowFocusChanged(boolean hasFocus) {
- super.onWindowFocusChanged(hasFocus);
- if (fireImg != null) {
- AnimationDrawable animDrawable = (AnimationDrawable) fireImg
- .getBackground();
- animDrawable.start();
- }
- }
0 0
- dialog中帧动画只显示一帧的问题
- Android自定义Dialog带Dialog的显示消失动画(一)
- 解决Android帧动画在Oncreate中启动只显示第一帧 和 Android中获取设备的IP
- 解决Android帧动画在Oncreate中启动只显示第一帧
- 解决Android帧动画在Oncreate中启动只显示第一帧
- jquery中动画(animal)只运行一次的问题!
- 关于自定义dialog中textview的显示的问题
- 解决Ubuntu启动后只显示一桌面图片的问题
- 重写的Dialog显示问题
- easyUI dialog 弹框显示百度地图,然后全屏只显示dialog的宽高
- 解决ScrollView中ListView只显示第一条的问题
- Listview中嵌套gridview只显示一行的问题
- Android 中ScrollView 只显示一行的问题
- ScrollView中嵌套ListView只显示一行的问题
- listView中只显示一行的问题处理
- 自定义Android中Dialog的弹出动画
- android 帧动画 xml 中动画无法播放的问题
- 显示gif动画(帧动画的播放)
- 使用gulp构建前端工程浅谈
- JMeter学习(八)JDBC测试计划-连接Oracle
- 深度剖析之 CountdownView
- docker基础概念总结
- jraiser
- dialog中帧动画只显示一帧的问题
- JMeter学习(九)FTP测试计划
- .NET web C#通过剪切板取出word中图片
- 第三章.保证数据完整性.总结
- android中数据存储及对xml的解析
- 交互式设计--如何让你的界面简约
- 树莓派2B挂载摄像头---isight
- Android 中与 Touch 事件详解
- css行内元素问题