国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android高級組件ImageSwitcher圖像切換器使用方法詳解

2019-10-22 18:18:27
字體:
來源:轉載
供稿:網友

圖像切換器(ImageSwitcher),用于實現類似于Windows操作系統的“Windows照片查看器”中的上一張、下一張切換圖片的功能。在使用ImageSwitcher時,必須實現ViewSwitcher.ViewFactory接口,并通過makeView()方法來創建用于顯示圖片的ImageView。makeView()方法將返回一個顯示圖片的ImageView。在使用圖像切換器時,還有一個方法非常重要,那就是setImageResource方法,該方法用于指定要在ImageSwitcher中顯示的圖片資源。

下面通過一個實例來說明圖像切換器的用法。

res/layout/main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"   android:layout_width="fill_parent"   android:layout_height="fill_parent"   android:orientation="horizontal"   android:id="@+id/layout"   android:gravity="center">   <Button      android:text="上一張"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:id="@+id/button1"/>   <ImageSwitcher     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:layout_gravity="center"     android:id="@+id/imageSwitcher1"/>   <Button      android:text="下一張"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:id="@+id/button2"/> </LinearLayout>

 MainActivity:

package com.example.test;  import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup.LayoutParams; import android.view.animation.AnimationUtils; import android.widget.Button; import android.widget.ImageSwitcher; import android.widget.ImageView; import android.widget.ViewSwitcher.ViewFactory;   public class MainActivity extends Activity{   //聲明并初始化一個保存要顯示圖像id的數組   private int[] imageId=new int[]{R.drawable.img01,R.drawable.img02,R.drawable.img03,       R.drawable.img04,R.drawable.img05,R.drawable.img06,R.drawable.img07,       R.drawable.img08};   private int index=0;//當前顯示圖像的索引   private ImageSwitcher imageSwitcher;//聲明一個圖像切換器對象   @Override   protected void onCreate(Bundle savedInstanceState) {     super.onCreate(savedInstanceState);     setContentView(R.layout.main);     imageSwitcher=(ImageSwitcher)findViewById(R.id.imageSwitcher1);//獲取圖像切換器     //設置動畫效果     imageSwitcher.setInAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_in));//設置淡入動畫     imageSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_out));//設置淡出動畫     imageSwitcher.setFactory(new ViewFactory() {//設置View工廠              @Override       public View makeView() {         ImageView imageView=null;         imageView=new ImageView(MainActivity.this);//實例化一個ImageView類的對象         imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);//設置保持縱橫比居中縮放圖像         imageView.setLayoutParams(new ImageSwitcher.LayoutParams(             LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));         return imageView;       }     });     imageSwitcher.setImageResource(imageId[index]);//顯示默認的圖片          //“上一張”和“下一張”按鈕的控制     Button up=(Button)findViewById(R.id.button1);     Button down=(Button)findViewById(R.id.button2);     up.setOnClickListener(new OnClickListener() {              @Override       public void onClick(View arg0) {         if(index>0){           index--;//圖片索引后退一個         }else{           index=imageId.length-1;//圖片達到最前面一張之后,循環至最后一張         }         imageSwitcher.setImageResource(imageId[index]);//顯示當前圖片       }     });     down.setOnClickListener(new OnClickListener() {                      @Override           public void onClick(View arg0) {             if(index<imageId.length-1){               index++;//圖片索引前進一個             }else{               index=0;//圖片達到最后面一張之后,循環至第一張             }             imageSwitcher.setImageResource(imageId[index]);//顯示當前圖片           }         });   } } 

效果如圖所示:

Android,ImageSwitcher,圖像切換器

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 库车县| 嘉峪关市| 鄯善县| 威信县| 贵州省| 墨竹工卡县| 白朗县| 云阳县| 无为县| 治县。| 永济市| 璧山县| 新营市| 株洲县| 英超| 沙洋县| 当雄县| 石门县| 柳江县| 乐清市| 牙克石市| 龙山县| 南川市| 江孜县| 宜州市| 彩票| 金山区| 巴彦县| 林口县| 奎屯市| 辽宁省| 酉阳| 赤城县| 余江县| 丹东市| 平昌县| 安吉县| 会宁县| 扬中市| 辽源市| 信阳市|