Android?Studio實現(xiàn)簡單補(bǔ)間動畫
本文實例為大家分享了Android Studio實現(xiàn)簡單補(bǔ)間動畫的具體代碼,供大家參考,具體內(nèi)容如下
1、動畫發(fā)在res/anim/,創(chuàng)建new/Directory
2、創(chuàng)建動畫, 平移,縮放,旋轉(zhuǎn),改變透明度
//平移 <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> ? <translate ? ? ? android:fromXDelta="0.0" ? ? android:fromYDelta="0.0" ? ? android:toXDelta="100" ? ? android:toYDelta="0.0" ? ? android:repeatMode="reverse" ? ? android:repeatCount="infinite" ? ? android:duration="4000" ? ? /> ? </set> //縮放 <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <scale ? ? ? android:repeatMode="reverse" ? ? android:repeatCount="infinite" ? ? android:duration="3000" ? ? android:fromXScale="1.0" ? ? android:fromYScale="1.0" ? ? android:toXScale="0.5" ? ? android:toYScale="0.5" ? ? android:pivotX="50%" ? ? android:pivotY="50%"/> ? </set> //旋轉(zhuǎn) <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> ? ? ? <rotate android:fromDegrees="0" ? ? ? ? android:toDegrees="360" ? ? ? ? android:pivotX="50%" ? ? ? ? android:pivotY="50%" ? ? ? ? android:repeatMode="reverse" ? ? ? ? android:repeatCount="infinite" ? ? ? ? android:duration="1000" ? ? ? ? /> ? </set> //改變透明度 <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha ? ? android:interpolator="@android:anim/linear_interpolator" ? ? android:repeatMode="reverse" ? ? android:repeatCount="infinite" ? ? android:duration="1000" ? ? android:fromAlpha="1.0" ? ? android:toAlpha="0.0"/> ? </set>
3、布局activity_main.xml,點擊按鈕圖片發(fā)送變化,圖片需要自己下載添加44
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" ? ? xmlns:app="http://schemas.android.com/apk/res-auto" ? ? xmlns:tools="http://schemas.android.com/tools" ? ? android:layout_width="match_parent" ? ? android:layout_height="match_parent" ? ? android:layout_weight="1" ? ? android:orientation="vertical" ? ? tools:context=".MainActivity"> ? ? ? ? <ImageView ? ? ? ? ? android:layout_width="300dp" ? ? ? ? ? android:layout_height="300dp" ? ? ? ? ? android:layout_centerInParent="true" ? ? ? ? ? android:layout_gravity="center" ? ? ? ? ? android:id="@+id/fk" ? ? ? ? ? android:src="@drawable/ff"/> ? ? ?<LinearLayout ? ? ? ?android:layout_width="match_parent" ? ? ? ?android:layout_height="match_parent" ? ? ? android:orientation="horizontal"> ? ? ? ? <Button ? ? ? ?android:layout_width="wrap_content" ? ? ? ?android:layout_height="wrap_content" ? ? ? ?android:text="平移" ? ? ? ?android:textSize="24sp" ? ? ? ?android:layout_weight="1" ? ? ? ? android:gravity="center" ? ? ? ? ? android:layout_gravity="bottom" ? ? ? ?android:id="@+id/but"/> ? ? ? <Button ? ? ? ? ? android:layout_width="wrap_content" ? ? ? ? ? android:layout_height="wrap_content" ? ? ? ? ? android:text="縮放" ? ? ? ? ? android:textSize="24sp" ? ? ? ? ? android:layout_gravity="bottom" ? ? ? ? ? android:layout_weight="1" ? ? ? ? ? android:gravity="center" ? ? ? ? ? android:id="@+id/but1"/> ? ? ? <Button ? ? ? ? ? android:layout_width="wrap_content" ? ? ? ? ? android:layout_height="wrap_content" ? ? ? ? ? android:text="旋轉(zhuǎn)" ? ? ? ? ? android:textSize="24sp" ? ? ? ? ? android:gravity="center" ? ? ? ? ? android:layout_gravity="bottom" ? ? ? ? ? android:layout_weight="1" ? ? ? ? ? android:id="@+id/but2"/> ? ? ? <Button ? ? ? ? ? android:layout_width="wrap_content" ? ? ? ? ? android:layout_height="wrap_content" ? ? ? ? ? android:text="改變透明度" ? ? ? ? ? android:textSize="24sp" ? ? ? ? ? android:gravity="center" ? ? ? ? ? android:layout_gravity="bottom" ? ? ? ? ? android:layout_weight="1" ? ? ? ? ? android:id="@+id/but3"/> ? ?</LinearLayout> ? </RelativeLayout>
4、邏輯代碼MainActivity
public class MainActivity extends AppCompatActivity implements View.OnClickListener { ? ? private ImageView imageView; ? ? private Button button; ? ? private Button button1; ? ? private Button button2; ? ? private Button button3; ? ? ? @RequiresApi(api = Build.VERSION_CODES.N) ? ? @Override ? ? protected void onCreate(Bundle savedInstanceState) { ? ? ? ? super.onCreate(savedInstanceState); ? ? ? ? setContentView(R.layout.activity_main); ? ? ? ? //要用控件,定id ? ? ? ? button=findViewById(R.id.but); ? ? ? ? button1=findViewById(R.id.but1); ? ? ? ? button2=findViewById(R.id.but2); ? ? ? ? button3=findViewById(R.id.but3); ? ? ? ? ? imageView=findViewById(R.id.fk); ? ? ? ? button.setOnClickListener(this); ? ? ? ? button1.setOnClickListener(this); ? ? ? ? button2.setOnClickListener(this); ? ? ? ? button3.setOnClickListener(this); ? ? ? } ? ? ? @Override ? ? public void onClick(View view) { ? ? ? ? switch (view.getId()){ ? ? ? ? ? ? case R.id.but: ? ? ? ? ? ? ? ? Animation translation= AnimationUtils.loadAnimation(this,R.anim.translate); ? ? ? ? ? ? ? ? imageView.startAnimation(translation); ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? case R.id.but1: ? ? ? ? ? ? ? ? Animation scale= AnimationUtils.loadAnimation(this,R.anim.scale); ? ? ? ? ? ? ? ? imageView.startAnimation(scale); ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? case R.id.but2: ? ? ? ? ? ? ? ? Animation rotate= AnimationUtils.loadAnimation(this,R.anim.rotate); ? ? ? ? ? ? ? ? imageView.startAnimation(rotate); ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? case R.id.but3: ? ? ? ? ? ? ? ? Animation alpha= AnimationUtils.loadAnimation(this,R.anim.alpha); ? ? ? ? ? ? ? ? imageView.startAnimation(alpha); ? ? ? ? ? ? ? ? break; ? ? ? ? } ? ? ? } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android Studio實現(xiàn)補(bǔ)間動畫
- Android動畫系列之幀動畫和補(bǔ)間動畫的示例代碼
- Android動畫學(xué)習(xí)筆記之補(bǔ)間動畫
- Android補(bǔ)間動畫基本使用(位移、縮放、旋轉(zhuǎn)、透明)
- Android旋轉(zhuǎn)、平移、縮放和透明度漸變的補(bǔ)間動畫
- Android控件Tween動畫(補(bǔ)間動畫)實現(xiàn)方法示例
- android 幀動畫,補(bǔ)間動畫,屬性動畫的簡單總結(jié)
- Android幀動畫、補(bǔ)間動畫、屬性動畫用法詳解
- Android動畫之補(bǔ)間動畫(Tween Animation)基礎(chǔ)學(xué)習(xí)
- Android動畫之補(bǔ)間動畫(Tween Animation)實例詳解
相關(guān)文章
Android開發(fā)筆記之:Log圖文詳解(Log.v,Log.d,Log.i,Log.w,Log.e)
本篇文章是對Android中的Log進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05Android自定義對話框Dialog的簡單實現(xiàn)
這篇文章主要為大家詳細(xì)介紹了Android自定義對話框Dialog的簡單實現(xiàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08android studio 打包自動生成版本號與日期,apk輸入路徑詳解
這篇文章主要介紹了android studio 打包自動生成版本號與日期,apk輸入路徑詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03android中WebView和javascript實現(xiàn)數(shù)據(jù)交互實例
這篇文章主要介紹了android中WebView和javascript實現(xiàn)數(shù)據(jù)交互實例,需要的朋友可以參考下2014-07-07android中px、sp與dp之間進(jìn)行轉(zhuǎn)換詳解
android中在xml布局中我們可以使用dp和px都可以,但是在代碼中,很多方法只提供了設(shè)置px的方法,這時候就需要用到dp和px相互切換了,下面這篇文章主要給大家介紹了關(guān)于android中px、sp與dp之間進(jìn)行轉(zhuǎn)換的相關(guān)資料,需要的朋友可以參考下2022-08-08