Android逐帧动画的实现
16lz
2022-04-20
一、代码实现:
private ImageView iv;private AnimationDrawable ad;@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);iv = (ImageView) findViewById(R.id.iv);ad = new AnimationDrawable();ad.addFrame(getResources().getDrawable(R.drawable.pic1), 100);ad.addFrame(getResources().getDrawable(R.drawable.pic2), 100);ad.addFrame(getResources().getDrawable(R.drawable.pic3), 100);ad.addFrame(getResources().getDrawable(R.drawable.pic4), 100);ad.addFrame(getResources().getDrawable(R.drawable.pic5), 100);ad.setOneShot(false);//true则只运行一次,false可以循环iv.setBackgroundDrawable(ad);iv.setOnClickListener(new View.OnClickListener()//按钮点击的时候运行,再次点击停止{@Overridepublic void onClick(View v){if (ad.isRunning()){ad.stop();} else {ad.start();}}});}
第二种,配置文件的实现方式
<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:drawable="@drawable/ic_launcher" android:duration="100"></item> <item android:drawable="@drawable/newsdetails_titlebar_btn_next" android:duration="100"></item> <item android:drawable="@drawable/newsdetails_titlebar_btn_next_selected" android:duration="100"></item> <item android:drawable="@drawable/newsdetails_titlebar_btn_previous" android:duration="100"></item> <item android:drawable="@drawable/newsdetails_titlebar_btn_previous_selected" android:duration="100"></item> </animation-list>
代码调用部分:
private ImageView iv;private AnimationDrawable ad;@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);iv = (ImageView) findViewById(R.id.iv);iv.setBackgroundResource(R.drawable.pic_anim);ad = (AnimationDrawable) iv.getBackground();iv.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v){if (ad.isRunning()){ad.stop();} else {ad.start();}}});}
更多相关文章
- Android(安卓)P2P语音通话实现
- android截图代码
- Android(安卓)长按setOnItemLongClickListener 显示context Menu
- Android设置重复文字水印背景
- android微信摇一摇功能
- android 页面跳转(intent)
- Android客户端Socket连接PC服务器端(加评论)
- Android(安卓)购物车加减功能的实现代码
- 浅谈Java中Collections.sort对List排序的两种方法