Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 高級開發 >> Android2.0版本以下Activity切換動畫效果

Android2.0版本以下Activity切換動畫效果

編輯:高級開發

前言

  在android 2.0版本以上做Activity切換時的動畫效果是很容易的,可以調用overridePendingTransition函數,一行代碼搞定,當然配置動畫效果的XML文件是少不了的,但是在2.0版本以下是沒有這個函數的,如何方便的做動畫效果呢?有說用VIEwFlipper或者getWindow().setWindowAnimations,但是這裡都沒有成功,用了一個取巧的辦法,但是效果還不錯:)

  聲明

  歡迎轉載,但請保留文章原始出處:)

  博客園:http://www.cnblogs.com

  農民伯伯: http://www.cnblogs.com/over140/

  正文

  一、流程說明

  點擊Activity1中按鈕btnLogin切換到Activity2,切換要求有縮放的動畫效果。

  二、實現原理

  在Activity2加載時啟用頂層容器的動畫效果,注意頂層容器最好是整屏。

  三、實現代碼

  Activity1.Java

  < !--< br/ />< br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)< br/ />http://www.CodeHighlighter.com/< br/ />< br/ />--> /**

  * 登錄

  */

  @Override

  public void onClick(View vIEw) {

  startActivity(getIntent().setClass(this, Activity2.class));

  }

  Activity2.Java

  < !--< br/ />< br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)< br/ />http://www.CodeHighlighter.com/< br/ />< br/ />--> @Override

  public void onCreate(Bundle savedInstanceState) {

  super.onCreate(savedInstanceState);

  setContentVIEw(R.layout.test2);

  Animation anim = AnimationUtils.loadAnimation(this,R.anim.my_scale_action);

  findVIEwById(R.id.body).startAnimation(anim);

  }

  test2.XML

  < !--< br/ />< br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)< br/ />http://www.CodeHighlighter.com/< br/ />< br/ />-->< LinearLayout android:id="@+id/body"

  XMLns:android="http://schemas.android.com/apk/res/android"

  接上頁

  android:layout_width="fill_parent" android:layout_height="fill_parent"

  android:orIEntation="vertical" >

  < TextVIEw android:layout_x="179dp" android:layout_y="78dp"

  android:id="@+id/test"

  android:layout_width="wrap_content" android:layout_height="wrap_content"

  android:textColor="#c5dde7" android:textStyle="bold">

  < /TextVIEw>

  < /LinearLayout>

  my_scale_action.XML 動畫效果的配置文件

  < !--< br/ />< br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)< br/ />http://www.CodeHighlighter.com/< br/ />< br/ />-->< set XMLns:android="http://schemas.android.com/apk/res/android">

  < scale android:interpolator="@android:anim/accelerate_decelerate_interpolator"

  android:fromXScale="0.0"

  android:toXScale="1.0"

  android:fromYScale="0.0"

  android:toYScale="1.0"

  android:pivotX="50%"

  android:pivotY="50%"

  android:fillAfter="true"

  android:duration="300" />

  < /set>

  代碼說明:

  a)  注意代碼Activity2.Java加粗標紅的兩行代碼,是本文的核心。

  b)  R.id.body為頂層容器的id

  c)  關於縮放的XML文件大家可以搜索一下,有相關的中文資料,搜索關鍵字:"android 動畫效果"。

  結束

  由圖片的動畫效果聯想到View的動畫效果再聯想到用頂層VIEw做動畫效果,效果還不錯,仍然在低版本奮斗的朋友有福了:)

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved