鍍金池/ 教程/ Android/ Android圖片切換
Android 應(yīng)用組件
使用布局文件自定義Android組件
Android通知
Android主題示例
Android JetPlayer實(shí)例
Android MediaPlayer(多媒體播放)
Android AbsoluteLayout
Android FrameLayout
Android Gestures/手勢(shì)
Android AutoCompleteTextView(自動(dòng)完成)實(shí)例
Android 資源組織和訪問
Android ListView
Android GridView
Android數(shù)據(jù)備份
Android撥打電話
Android發(fā)送短信/SMS
Android ProgressDialog
SimpleCursorAdapter
Android發(fā)送電子郵件
Android Activity
Android TextView
Android事件處理
Android TableLayout
Android加載Spinner
Android內(nèi)容提供者
Android自定義字體
Android Service
Android CheckBox
Android Intent過濾器
Android LinearLayout
Android登錄實(shí)例
Android RadioButton
Android樣式和主題
Android自定義組件及屬性
Android UI控件
Android Animation(動(dòng)畫)實(shí)例
Android Camera(攝像頭)
Android ToggleButton
Android Clipboard(復(fù)制/剪貼板)
Android音頻捕獲(錄音)
發(fā)布Android應(yīng)用
Android Alertdialog(警告對(duì)話框)
Android圖片效果
Android內(nèi)部存儲(chǔ)
Android基于位置服務(wù)
Android RadioGroup
Android AutoCompleteTextView
Android Bluetooth(藍(lán)牙)實(shí)例
Android RelativeLayout
Android最佳實(shí)踐
Android本地化
Android自定義組件
Android教程
Android 架構(gòu)
Android UI布局
Android Button
Android Hello World示例
Android音頻管理器實(shí)例
ArrayAdapter
Android拖放
Android碎片/片段
Android圖片切換
Android JSON解析器
Android開發(fā)環(huán)境搭建
Android Spinner
Android樣式示例
使用活動(dòng)代碼自定義Android組件
Android ImageButton
Android EditText
Android廣播接收器

Android圖片切換

有時(shí)候,不希望圖片突然出現(xiàn)在屏幕上,而要應(yīng)用某種形式的動(dòng)畫顯示圖片時(shí),從一個(gè)圖像轉(zhuǎn)換到另一個(gè)。這是在Android中支持的ImageSwitcher

圖像切換器允許通過它們出現(xiàn)在屏幕上的方式上的圖像添加一些過渡。為了使用圖像切換,需要先定義它的XML組件。它的語法如下:

<ImageSwitcher
   android:id="@+id/imageSwitcher1"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_centerHorizontal="true"
   android:layout_centerVertical="true" >
</ImageSwitcher>

現(xiàn)在創(chuàng)建ImageSwitcher的Java實(shí)例,并得到這個(gè)XML組件的引用。它的語法如下:

private ImageSwitcher imageSwitcher;
imageSwitcher = (ImageSwitcher)findViewById(R.id.imageSwitcher1);

我們需要做的下一件事是實(shí)現(xiàn)的ViewFactory接口,并實(shí)現(xiàn)返回一個(gè)ImageView的未實(shí)現(xiàn)的方法。它的語法如下:

imageSwitcher.setImageResource(R.drawable.ic_launcher);
imageSwitcher.setFactory(new ViewFactory() {
   public View makeView() {
      ImageView myView = new ImageView(getApplicationContext());
      return myView;
   }
}

需要做的最后一件事是添加動(dòng)畫到ImageSwitcher。需要通過調(diào)用AnimationUtilities類的對(duì)象一個(gè)靜態(tài)方法loadAnimation定義動(dòng)畫類。它的語法如下:

Animation in = AnimationUtils.loadAnimation(this,android.R.anim.slide_in_left);
imageSwitcher.setInAnimation(in);
imageSwitcher.setOutAnimation(out);         

setInAnimaton設(shè)置對(duì)象的外觀的動(dòng)畫在畫面上,而setOutAnimation則正好是相反的方法。該loadAnimation()方法創(chuàng)建一個(gè)動(dòng)畫對(duì)象。

除了這些方法,也有在ImageSwitcher類中定義的其他方法。它們被定義如下:

Sr.No Method & description
1 setImageDrawable(Drawable drawable)
設(shè)置使用圖像切換圖像。圖像以位圖的形式被傳遞
2 setImageResource(int resid)
設(shè)置使用圖像切換圖像。圖像被傳遞整數(shù)標(biāo)識(shí)符的形式
3 setImageURI(Uri uri)
設(shè)置使用圖像切換圖像。該圖像是通過URI的形式
4 ImageSwitcher(Context context, AttributeSet attrs)
返回圖像切換對(duì)象已經(jīng)設(shè)置一些屬性的方法傳遞
5 onInitializeAccessibilityEvent (AccessibilityEvent event)
初始化一個(gè)AccessibilityEvent與此有關(guān)查看信息是事件源
6 onInitializeAccessibilityNodeInfo (AccessibilityNodeInfo info)
初始化一個(gè)AccessibilityNodeInfo提供有關(guān)該視圖的信息

例子

下面的例子演示了一些對(duì)位圖圖像轉(zhuǎn)換器的效果。它創(chuàng)建了一個(gè)基本的應(yīng)用程序,它允許查看的影像的動(dòng)畫效果。

為了試驗(yàn)這個(gè)例子,需要在實(shí)際設(shè)備上運(yùn)行此程序。

Steps 描述
1 使用Android Studio創(chuàng)建Android應(yīng)用程序,并將其命名為ImageSwitcher。在創(chuàng)建這個(gè)項(xiàng)目時(shí)確保目標(biāo)SDK編譯在Android SDK的最新版本或使用更高級(jí)別的API
2 修改src/MainActivity.java 文件中添加必要的代碼
3 修改res/layout/activity_main添加相應(yīng)的XML組件
4 運(yùn)行應(yīng)用程序并選擇運(yùn)行Android的設(shè)備,并在其上安裝的應(yīng)用和驗(yàn)證結(jié)果

以下是修改主活動(dòng)文件的內(nèi)容 src/com.yiibai.imageswithcer/MainActivity.java.

package com.example.imageswitcher;

import android.app.ActionBar.LayoutParams;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageButton;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.Toast;
import android.widget.ViewSwitcher.ViewFactory;

public class MainActivity extends Activity {

   private ImageButton img;
   private ImageSwitcher imageSwitcher;

   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      img = (ImageButton)findViewById(R.id.imageButton1);
      imageSwitcher = (ImageSwitcher)findViewById(R.id.imageSwitcher1);

      imageSwitcher.setFactory<
上一篇:ArrayAdapter下一篇:Android通知