Android ImageSwitcher 图片切换 按钮点击切换


图片显示:

 

1. MainActivity

  1. package com.gamedog.test;  
  2.   
  3. import Android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.view.View;  
  6. import android.widget.Button;  
  7. import android.widget.ImageSwitcher;  
  8. import android.widget.ImageView;  
  9. import android.widget.ViewSwitcher.ViewFactory;  
  10.   
  11. public class MainActivity extends Activity implements ViewFactory  
  12. {  
  13.   
  14.     private ImageSwitcher switcher;  
  15.     private Button forward;  
  16.     private Button next;  
  17.     // 图片索引   
  18.     private static int index = 0;  
  19.     // 显示的图片资源   
  20.   
  21.     private static final Integer[] imagelist =  
  22.     { R.drawable.img1, R.drawable.img2, R.drawable.img3, R.drawable.img4, R.drawable.img5, R.drawable.img6 };  
  23.   
  24.     @Override  
  25.     public void onCreate(Bundle savedInstanceState)  
  26.     {  
  27.         super.onCreate(savedInstanceState);  
  28.         setContentView(R.layout.main);  
  29.   
  30.         forward = (Button) findViewById(R.id.forward);  
  31.         next = (Button) findViewById(R.id.next);  
  32.         switcher = (ImageSwitcher) findViewById(R.id.image);  
  33.         switcher.setFactory(this);  
  34.         switcher.setImageResource(imagelist[index]);  
  35.   
  36.         // 上一张   
  37.         forward.setOnClickListener(new View.OnClickListener()  
  38.         {  
  39.   
  40.             @Override  
  41.             public void onClick(View view)  
  42.             {  
  43.                 index--;  
  44.                 if (index < 0)  
  45.                 {  
  46.                     index = imagelist.length - 1;  
  47.                 }  
  48.                 switcher.setImageResource(imagelist[index]);  
  49.             }  
  50.         });  
  51.         // 下一张   
  52.         next.setOnClickListener(new View.OnClickListener()  
  53.         {  
  54.   
  55.             @Override  
  56.             public void onClick(View view)  
  57.             {  
  58.                 index++;  
  59.                 if (index >= imagelist.length)  
  60.                 {  
  61.                     index = 0;  
  62.                 }  
  63.                 switcher.setImageResource(imagelist[index]);  
  64.             }  
  65.         });  
  66.     }  
  67.   
  68.     // 用于显示图片   
  69.     @Override  
  70.     public View makeView()  
  71.     {  
  72.         return new ImageView(this);  
  73.     }  
  74. }  

2.布局文件

  1. <?xml version="1.0" encoding="utf-8"?>   
  2. <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"   
  3.             android:orientation="vertical"   
  4.             android:layout_width="fill_parent"   
  5.             android:layout_height="fill_parent">   
  6.     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"   
  7.                   android:orientation="horizontal"   
  8.                   android:layout_width="fill_parent"   
  9.                   android:layout_height="fill_parent"   
  10.                   android:gravity="center"  
  11.                   android:background="#f0f0f0"  
  12.             >   
  13.         <Button   
  14.                 android:id="@+id/forward"   
  15.                 android:layout_width="wrap_content"   
  16.                 android:layout_height="wrap_content"   
  17.                 android:background="@drawable/left_btn"  
  18.                 android:layout_gravity="center"  
  19.                 />   
  20.         <ImageSwitcher   
  21.                 android:id="@+id/image"   
  22.                 android:layout_width="wrap_content"   
  23.                 android:layout_height="wrap_content"   
  24.                 android:layout_marginLeft="20dp"  
  25.                 android:layout_marginRight="20dp"  
  26.                 />   
  27.         <Button   
  28.                 android:id="@+id/next"   
  29.                 android:layout_width="wrap_content"   
  30.                 android:layout_height="wrap_content"   
  31.                 android:background="@drawable/right_btn"  
  32.                  android:layout_gravity="center"  
  33.                 />   
  34.    
  35.     </LinearLayout>   
  36. </ScrollView>   

相关内容