Android開啟動(dòng)畫之漸隱漸現(xiàn)效果
啟動(dòng)某項(xiàng)程序時(shí)我們往往都能看到不同的“開機(jī)動(dòng)畫”,千變?nèi)f化的動(dòng)畫也只不過是四種基本動(dòng)畫衍變美化而成的。
四種android動(dòng)畫效果:
- alpha 漸變透明度動(dòng)畫效果
- scale 漸變尺寸伸縮動(dòng)畫效果
- translate 畫面轉(zhuǎn)換位置移動(dòng)動(dòng)畫效果
- rotate 畫面轉(zhuǎn)移旋轉(zhuǎn)動(dòng)畫效果
最簡(jiǎn)單的莫過于漸變透明效果,單單這一種就可完成漸隱漸現(xiàn)的動(dòng)畫效果(用于漸現(xiàn)漸隱的可以是整個(gè)歡迎頁面也可以是歡迎頁面里的一部分):
1)、 在res里新建anim文件夾用來盛放動(dòng)畫定義的動(dòng)作文件:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0"
android:duration="2000"/>
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:startOffset="3000"
android:duration="3000"/>
</set>
fromalpha即開始的透明度,toalpha即結(jié)束時(shí)的透明度,duration為時(shí)間(單位毫秒)。
2)、定義布局文件(layout):
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical|center_horizontal"
android:orientation="vertical" >
<ImageView
android:id="@+id/welcom_logo"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/welcome" />
</LinearLayout>
這里和以往沒有任何不同,只需對(duì)要漸現(xiàn)漸隱的圖片進(jìn)行id標(biāo)示。
3)、實(shí)現(xiàn)方法(Activity):
public class WelcomeActivity extends Activity implements AnimationListener {
private ImageView imageView = null;
private Animation alphaAnimation = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_welcome);
imageView = (ImageView) findViewById(R.id.welcom_logo);
alphaAnimation = AnimationUtils.loadAnimation(this,
R.anim.welcome_alpha);
alphaAnimation.setFillEnabled(true);//啟動(dòng)Fill保持
alphaAnimation.setFillAfter(true);//設(shè)置動(dòng)畫的最后一幀是保留在view上的
imageView.setAnimation(alphaAnimation);
alphaAnimation.setAnimationListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_welcome, menu);
return true;
}
@Override
public void onAnimationEnd(Animation animation) {
//動(dòng)畫結(jié)束時(shí)結(jié)束歡迎頁面并跳轉(zhuǎn)到主頁面
Intent intent=new Intent(this,GroupActivity.class);
startActivity(intent);
this.finish();
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationStart(Animation animation) {
}
public boolean onKeyDown(int KeyCode,KeyEvent event){
//在歡迎頁面屏蔽BACK鍵
if(KeyCode==KeyEvent.KEYCODE_BACK){
return false;
}
return false;
}
}
歡迎頁面顧名思義只是裝飾作用一閃而過不需要返回鍵進(jìn)行操作。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android UI 實(shí)現(xiàn)老虎機(jī)詳解及實(shí)例代碼
這篇文章主要介紹了Android UI 實(shí)現(xiàn)老虎機(jī)詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2017-03-03
Android自定義實(shí)現(xiàn)BaseAdapter的普通實(shí)現(xiàn)
這篇文章主要為大家詳細(xì)介紹了Android自定義實(shí)現(xiàn)BaseAdapter的普通實(shí)現(xiàn),感興趣的小伙伴們可以參考一下2016-08-08
Android應(yīng)用中clearFocus方法調(diào)用無效的問題解決
clearFocus()主要用于清除EditText的焦點(diǎn),Android App開發(fā)中很多時(shí)候會(huì)發(fā)現(xiàn)其調(diào)用無效,帶著這個(gè)問題我們就來看一下本文主題、Android應(yīng)用中clearFocus方法調(diào)用無效的問題解決2016-05-05
Android Caused by: java.lang.ClassNotFoundException解決辦法
這篇文章主要介紹了Android Caused by: java.lang.ClassNotFoundException解決辦法的相關(guān)資料,需要的朋友可以參考下2017-03-03
Android實(shí)現(xiàn)聯(lián)動(dòng)下拉框 下拉列表spinner的實(shí)例代碼
這篇文章介紹了Android實(shí)現(xiàn)聯(lián)動(dòng)下拉框 下拉列表spinner的實(shí)例代碼,有需要的朋友可以參考一下2013-10-10
使用Android studio創(chuàng)建的AIDL編譯時(shí)找不到自定義類的解決辦法
這篇文章主要介紹了使用Android studio創(chuàng)建的AIDL編譯時(shí)找不到自定義類的解決辦法的相關(guān)資料,需要的朋友可以參考下2016-02-02
Android內(nèi)存泄漏排查利器LeakCanary
這篇文章主要為大家詳細(xì)介紹了Android內(nèi)存泄漏排查利器LeakCanary的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03

