Android基礎(chǔ)知識之frame動畫效果
上一篇我們說了Android中的tween動畫,這一篇我們說說frame動畫,frame動畫主要是實現(xiàn)了一種類似于gif動畫的效果,就是多張圖按預(yù)先設(shè)定好的時間依次連續(xù)顯示。
新建一個android項目,名字叫做frameTest,在res文件夾下新建一個文件夾叫做anim,我們的frame動畫的xml文件就放在這里。
在anim中新建一個frame.xml文件,內(nèi)容如下:
<?xml version="1.0" encoding="utf-8"?> <animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false"><!-- true表示只播放一次,false表示無限循環(huán)播放 --> <item android:drawable="@drawable/girl_1" android:duration="100" /> <item android:drawable="@drawable/girl_2" android:duration="100" /> <item android:drawable="@drawable/girl_3" android:duration="100" /> <item android:drawable="@drawable/girl_4" android:duration="100" /> <item android:drawable="@drawable/girl_5" android:duration="100" /> <item android:drawable="@drawable/girl_6" android:duration="300" /> <item android:drawable="@drawable/girl_7" android:duration="400" /> <item android:drawable="@drawable/girl_8" android:duration="300" /> <item android:drawable="@drawable/girl_9" android:duration="100" /> <item android:drawable="@drawable/girl_10" android:duration="100" /> <item android:drawable="@drawable/girl_11" android:duration="100" /> </animation-list>
這里是11圖片,前面的android:oneshot屬性表示該動畫執(zhí)行的次數(shù),false表示該動畫反復(fù)循環(huán)播放,true則表示該動畫值播放一次,duration表示每張圖片顯示的時間,以毫秒計。
然后看看MainActivity中的代碼:
public class MainActivity extends Activity { private ImageView iv; private AnimationDrawable ad; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); iv = (ImageView) this.findViewById(R.id.iv); // iv.setBackgroundResource(R.anim.frame); // ad = (AnimationDrawable) iv.getBackground(); //上面兩句,可以用下面兩句代替,效果是一樣的 iv.setImageResource(R.anim.frame); ad = (AnimationDrawable) iv.getDrawable(); } public void start(View v){ //如果ad正在運行,就先讓它停止下來 if(ad.isRunning()) ad.stop(); ad.start(); } }
先拿到一個ImageView,然后把frame動畫設(shè)置為它的背景,最后拿到這個圖片的背景并強轉(zhuǎn)為AnimationDrawable,當(dāng)點擊該圖片時,如果動畫已經(jīng)在運行,就讓它先停止,再重新運行,否則直接運行即可。
原文鏈接:http://blog.csdn.net/u012702547/article/details/45716757
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android數(shù)據(jù)庫greenDAO配置與使用介紹
這篇文章主要介紹了Android集成GreenDao數(shù)據(jù)庫,使用數(shù)據(jù)庫存儲時候,一般都會使用一些第三方ORM框架,比如GreenDao,本文分幾步給大家介紹Android集成GreenDao數(shù)據(jù)庫的方法,需要的朋友可以參考下2023-03-03Android實現(xiàn)可點擊的幸運大轉(zhuǎn)盤
這篇文章主要為大家詳細介紹了Android實現(xiàn)可點擊的幸運大轉(zhuǎn)盤,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-02-02Kotlin RadioGroup與ViewPager實現(xiàn)底層分頁按鈕方法
安卓的控件是挺多的,沒有辦法一個一個的來說明,我們挑出了一些重點的控件,組成一些常見的布局,這樣以后在遇到相同功能的界面時,就會有自己的思路,或者進行復(fù)用2022-12-12Android開發(fā)Jetpack組件LiveData使用講解
LiveData是Jetpack組件的一部分,更多的時候是搭配ViewModel來使用,相對于Observable,LiveData的最大優(yōu)勢是其具有生命感知的,換句話說,LiveData可以保證只有在組件( Activity、Fragment、Service)處于活動生命周期狀態(tài)的時候才會更新數(shù)據(jù)2022-08-08基于Android studio3.6的JNI教程之opencv實例詳解
這篇文章主要介紹了基于Android studio3.6的JNI教程之opencv實例詳解,本文通過實例代碼截圖的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03Android 超詳細深刨Activity Result API的使用
這篇文章主要介紹了Android開發(fā)中Activity Result API的使用,掌握了它以后你就可以放棄startActivityForResult了,感興趣的朋友一起來看看吧2022-03-03Android自定義ImageView實現(xiàn)圓角功能
這篇文章主要為大家詳細介紹了Android自定義ImageView實現(xiàn)圓角功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-12-12monkeyrunner環(huán)境搭建及實例教程(3)
這篇文章主要為大家詳細介紹了monkeyrunner環(huán)境搭建及實例教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-11-11Android ListView物流獲取追蹤功能實現(xiàn)
這篇文章主要介紹了Android ListView物流獲取追蹤功能實現(xiàn)的相關(guān)資料,需要的朋友可以參考下2016-03-03