生活随笔
收集整理的這篇文章主要介紹了
android中设置Animation 动画效果
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在 Android 中, Animation 動(dòng)畫(huà)效果的實(shí)現(xiàn)可以通過(guò)兩種方式進(jìn)行實(shí)現(xiàn),一種是 tweened animation 漸變動(dòng)畫(huà),另一種是 frame
by frame animation 畫(huà)面轉(zhuǎn)換動(dòng)畫(huà),接下來(lái)eoe進(jìn)行講解。
tweened animation
漸變動(dòng)畫(huà)有以下兩種類型:
1.alpha?? 漸變透明度動(dòng)畫(huà)效果
2.scale?? 漸變尺寸伸縮動(dòng)畫(huà)效果
frame
by frame animation
畫(huà)面轉(zhuǎn)換動(dòng)畫(huà)有以下兩種類型:
1.translate? 畫(huà)面轉(zhuǎn)換位置移動(dòng)動(dòng)畫(huà)效果
2.rotate???
畫(huà)面轉(zhuǎn)移旋轉(zhuǎn)動(dòng)畫(huà)效果
在 res 文件夾下新建一個(gè) anim 的文件夾,并在其中建立一個(gè) animation.xml 文件,具體如下:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="0" // 設(shè)置動(dòng)畫(huà)開(kāi)始時(shí) x 坐標(biāo)的位置 android:toXDelta="-100%p" // 設(shè)置動(dòng)畫(huà)結(jié)束時(shí) x 坐標(biāo)的位置 android:duration="300" // 設(shè)置動(dòng)畫(huà)持續(xù)的時(shí)間 300 毫秒 > </translate> <alpha android:fromAlpha="1.0" // 設(shè)置動(dòng)畫(huà)開(kāi)始時(shí)的透明度 1.0 代表不透明 android:toAlpha="0.0" // 設(shè)置動(dòng)畫(huà)開(kāi)始時(shí)的透明度 0.0 表示完全透明 android:duration="300" // 設(shè)置動(dòng)畫(huà)持續(xù)的時(shí)間 300 毫秒 /> <scale android:interpolator=" // 設(shè)置動(dòng)畫(huà)出入器 @android:anim/accelerate_decelerate_interpolator" android:fromXScale="0.0" // 設(shè)置動(dòng)畫(huà)開(kāi)始時(shí) x 坐標(biāo)上的伸縮長(zhǎng)度 android:toXScale="1.4" // 設(shè)置動(dòng)畫(huà)結(jié)束時(shí) x 坐標(biāo)上的伸縮長(zhǎng)度 android:fromYScale="0.0" // 設(shè)置動(dòng)畫(huà)開(kāi)始時(shí) y 坐標(biāo)上的伸縮長(zhǎng)度 android:toYScale="1.4" // 設(shè)置動(dòng)畫(huà)開(kāi)始時(shí) y 坐標(biāo)上的伸縮長(zhǎng)度 android:pivotX="50%" // 設(shè)置動(dòng)畫(huà)相對(duì)于控件的 x 坐標(biāo)的位置 android:pivotY="50%" // 設(shè)置動(dòng)畫(huà)相對(duì)于控件的 y 坐標(biāo)的位置 android:fillAfter="false" // 該動(dòng)畫(huà)轉(zhuǎn)化在動(dòng)畫(huà)結(jié)束前開(kāi)始應(yīng)用 android:duration="700" // 設(shè)置動(dòng)畫(huà)持續(xù)的時(shí)間 /> <rotate android:interpolator= // 設(shè)置動(dòng)畫(huà)出入器 "@android:anim/accelerate_decelerate_interpolator" android:fromDegrees="0" // 設(shè)置動(dòng)畫(huà)開(kāi)始時(shí)的角度 android:toDegrees="+350" // 設(shè)置動(dòng)畫(huà)結(jié)束時(shí)的旋轉(zhuǎn)角度 android:pivotX="50%" // 設(shè)置動(dòng)畫(huà)相對(duì)于控件的 x 坐標(biāo)的位置 android:pivotY="50%" // 設(shè)置動(dòng)畫(huà)相對(duì)于控件的 y 坐標(biāo)的位置 android:duration="3000" // 設(shè)置動(dòng)畫(huà)持續(xù)的時(shí)間 /> </set> 利用 AnimationUtils.loadAnimation 將動(dòng)畫(huà)加載。
Animation animation; animation=AnimationUtils.loadAnimation(
this, R.anim.animation); // 然后再想要實(shí)現(xiàn)動(dòng)畫(huà)效果的控件上通過(guò)使用 startAnimation() 方法進(jìn)行添加。 // 編寫(xiě)動(dòng)畫(huà)對(duì)象,并且獲取自定應(yīng)的動(dòng)畫(huà)樣式
animation=AnimationUtils.loadAnimation(
this, R.anim.animation); spinner.setOnTouchListener(new Spinner.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub // 運(yùn)行動(dòng)畫(huà) animation
v.startAnimation(animation); // 將 spinner 的可見(jiàn)性設(shè)置為不可見(jiàn)狀態(tài)
v.setVisibility(View.INVISIBLE); return false; } }); ?
總結(jié)
以上是生活随笔為你收集整理的android中设置Animation 动画效果的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。