亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android入門之Gallery+ImageSwitcher用法實例解析

2020-04-11 11:46:29
字體:
來源:轉載
供稿:網友

繼上一篇介紹了如何使用Gallery控件之后,本文就來講一下Gallery 與ImageSwitcher的結合使用。本文所述實例代碼將實現一個簡單的瀏覽圖片的功能。

先貼出程序運行截圖如下:

除了Gallery可以拖拉切換圖片,我在ImageSwitcher控件加入了setOnTouchListener事件實現,使得ImageSwitcher也可以在拖拉中切換圖片。本例子依然使用JAVA的反射機制來自動讀取資源中的圖片。

main.xml的源碼如下:

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"   android:layout_width="match_parent"   android:layout_height="match_parent">     <ImageSwitcher android:id="@+id/switcher"    android:layout_width="match_parent" android:layout_height="match_parent"/>    <Gallery android:id="@+id/gallery"    android:background="#55000000"    android:layout_width="match_parent"    android:layout_alignParentBottom="true"    android:layout_alignParentLeft="true"        android:gravity="center_vertical"    android:spacing="16dp" android:layout_height="100dp"/></RelativeLayout>

Java程序的源碼如下:

package com.testImageView;import java.lang.reflect.Field;import java.util.ArrayList;import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;import android.view.ViewGroup;import android.view.animation.AnimationUtils;import android.widget.AdapterView;import android.widget.BaseAdapter;import android.widget.Gallery;import android.widget.ImageSwitcher;import android.widget.ImageView;import android.widget.AdapterView.OnItemSelectedListener;import android.widget.Gallery.LayoutParams;import android.widget.ViewSwitcher.ViewFactory;public class testImageView extends Activity implements ViewFactory { private ImageSwitcher is; private Gallery gallery; private int downX,upX;  private ArrayList<Integer> imgList=new ArrayList<Integer>();//圖像ID   @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.main);    //用反射機制來獲取資源中的圖片ID   Field[] fields = R.drawable.class.getDeclaredFields();   for (Field field : fields)   {   if (!"icon".equals(field.getName()))//除了icon之外的圖片   {     int index = 0;  try {   index = field.getInt(R.drawable.class);  } catch (IllegalArgumentException e) {   // TODO Auto-generated catch block   e.printStackTrace();  } catch (IllegalAccessException e) {   // TODO Auto-generated catch block   e.printStackTrace();  }    //保存圖片ID    imgList.add(index);   }   }      //設置ImageSwitcher控件 is = (ImageSwitcher) findViewById(R.id.switcher); is.setFactory(this); is.setInAnimation(AnimationUtils.loadAnimation(this,  android.R.anim.fade_in)); is.setOutAnimation(AnimationUtils.loadAnimation(this,  android.R.anim.fade_out)); is.setOnTouchListener(new OnTouchListener(){  /*  * 在ImageSwitcher控件上滑動可以切換圖片  */  @Override  public boolean onTouch(View v, MotionEvent event) {  if(event.getAction()==MotionEvent.ACTION_DOWN)  {   downX=(int) event.getX();//取得按下時的坐標   return true;  }  else if(event.getAction()==MotionEvent.ACTION_UP)  {   upX=(int) event.getX();//取得松開時的坐標   int index=0;   if(upX-downX>100)//從左拖到右,即看前一張   {   //如果是第一,則去到尾部   if(gallery.getSelectedItemPosition()==0)     index=gallery.getCount()-1;   else    index=gallery.getSelectedItemPosition()-1;   }   else if(downX-upX>100)//從右拖到左,即看后一張   {   //如果是最后,則去到第一   if(gallery.getSelectedItemPosition()==(gallery.getCount()-1))    index=0;   else    index=gallery.getSelectedItemPosition()+1;   }   //改變gallery圖片所選,自動觸發ImageSwitcher的setOnItemSelectedListener   gallery.setSelection(index, true);   return true;  }  return false;  }   });  //設置gallery控件 gallery = (Gallery) findViewById(R.id.gallery); gallery.setAdapter(new ImageAdapter(this)); gallery.setOnItemSelectedListener(new OnItemSelectedListener(){  @Override  public void onItemSelected(AdapterView<?> arg0, View arg1,   int position, long arg3) {  is.setImageResource(imgList.get(position));  }  @Override  public void onNothingSelected(AdapterView<?> arg0) {  // TODO Auto-generated method stub  }   }); } //設置ImgaeSwitcher @Override public View makeView() { ImageView i = new ImageView(this); i.setBackgroundColor(0xFF000000); i.setScaleType(ImageView.ScaleType.CENTER);//居中 i.setLayoutParams(new ImageSwitcher.LayoutParams(//自適應圖片大小  LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); return i; } public class ImageAdapter extends BaseAdapter { public ImageAdapter(Context c) {  mContext = c; } public int getCount() {  return imgList.size(); } public Object getItem(int position) {  return position; } public long getItemId(int position) {  return position; } public View getView(int position, View convertView, ViewGroup parent) {  ImageView i = new ImageView(mContext);  i.setImageResource(imgList.get(position));  i.setAdjustViewBounds(true);  i.setLayoutParams(new Gallery.LayoutParams(   LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));  return i; } private Context mContext; }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美疯狂性受xxxxx另类| 精品视频中文字幕| 97在线免费视频| 国产精品久久久久久久久免费看| 欧美成人黑人xx视频免费观看| 亚洲自拍高清视频网站| 欧美亚洲另类制服自拍| 国产精品爽爽爽| 亚洲精品视频免费在线观看| 欧美性黄网官网| 日韩av理论片| 69**夜色精品国产69乱| 国产日韩欧美综合| 97在线视频免费观看| 久久久久久九九九| 日本伊人精品一区二区三区介绍| 91精品视频免费观看| 在线观看久久av| 国产视频精品久久久| 在线精品91av| 精品国产精品自拍| 中文字幕亚洲在线| 欧美一级淫片丝袜脚交| 精品久久久久久中文字幕| 亚洲人精品午夜在线观看| 日韩在线资源网| 综合欧美国产视频二区| 欧美日韩性视频在线| 久久亚洲影音av资源网| 亚洲精品短视频| 在线电影中文日韩| 欧美日韩国产在线看| 成人黄色免费网站在线观看| 欧美精品videos性欧美| 亚洲a区在线视频| 欧美精品性视频| 97在线视频观看| 亚洲最大福利网| 精品国产一区二区三区久久狼5月| 国产精品电影观看| 日韩在线免费高清视频| 欧美精品日韩三级| 亚洲深夜福利在线| 日韩美女免费线视频| 亚洲成人xxx| 国产精品av在线播放| 久久久午夜视频| 亚洲欧洲中文天堂| 成人福利免费观看| 91中文字幕在线观看| 久久影院中文字幕| 精品亚洲一区二区三区在线观看| 国产精品一区二区电影| 欧美精品日韩三级| 日韩精品欧美国产精品忘忧草| 日韩在线观看免费全集电视剧网站| 国产精品视频网| 国产美女主播一区| 欧美精品一本久久男人的天堂| 欧美最近摘花xxxx摘花| 欧美成人精品一区| 久久99国产精品久久久久久久久| 国产性猛交xxxx免费看久久| 国产精品免费看久久久香蕉| 日韩在线视频观看| 91精品视频在线| 国产精品青青在线观看爽香蕉| 亚洲美女av在线播放| 亚洲欧美激情精品一区二区| 欧美高清视频免费观看| 亚洲高清在线观看| 国产精品9999| 亚洲精品视频网上网址在线观看| 成人高清视频观看www| 国产精品∨欧美精品v日韩精品| 精品亚洲永久免费精品| 亚洲精品一区中文| 国产精品ⅴa在线观看h| 中文字幕不卡在线视频极品| 国产精品一区二区三区久久久| 国产综合香蕉五月婷在线| 日韩女优在线播放| 国产精品亚洲自拍| 国产精品免费一区二区三区都可以| 成人深夜直播免费观看| 国产免费一区二区三区香蕉精| 精品人伦一区二区三区蜜桃免费| 午夜精品免费视频| 亚洲女在线观看| 在线国产精品视频| 在线播放国产一区中文字幕剧情欧美| 日韩一区二区在线视频| 欧美性猛交xxx| 成人激情视频小说免费下载| 亚洲美女视频网| 色系列之999| xxx成人少妇69| 亚洲摸下面视频| 国产一区二区精品丝袜| 中文字幕亚洲欧美日韩高清| 免费av一区二区| 日韩激情av在线免费观看| 亚洲www永久成人夜色| 欧美日韩一区二区免费在线观看| 国语自产精品视频在线看| 精品国产91久久久| 亚洲精品美女久久久| 色婷婷久久av| 亚洲男人的天堂在线| 国产精品久久久久久久电影| 久久大大胆人体| 亚洲第一区在线| 日本最新高清不卡中文字幕| 欧美精品久久久久久久久久| 亚洲一区二区自拍| 在线精品视频视频中文字幕| 国产有码一区二区| 久久欧美在线电影| 国产亚洲欧美另类中文| 欧美老女人性视频| 欧美国产日韩一区二区在线观看| 国产精品欧美在线| 久久精品福利视频| 久久久精品中文字幕| 国产精品第三页| 欧美福利视频网站| 欧美激情在线观看| 国产精品三级在线| 国产欧美久久一区二区| 久久久最新网址| 欧美特黄级在线| 久久久久国产视频| 欧美亚洲成人xxx| 亚洲欧洲成视频免费观看| 亚洲高清一区二| 1769国内精品视频在线播放| 亚洲成av人影院在线观看| 日韩精品www| 日本精品久久电影| 成人午夜黄色影院| 国产综合在线视频| 日韩黄色高清视频| 国产91色在线|| www欧美xxxx| 国产高清在线不卡| 亚洲午夜国产成人av电影男同| 日韩成人在线视频观看| 欧美伊久线香蕉线新在线| 97在线视频免费播放| 日韩精品在线免费观看视频| 精品中文字幕在线观看| 亚洲第一视频网站| 热99精品里视频精品| 久久视频免费在线播放| 欧美性猛交xxxx| 精品久久中文字幕久久av| 亚洲精品久久久久久久久久久久| 国内精品在线一区| 成人黄色午夜影院| 97久久精品人人澡人人爽缅北| 国产suv精品一区二区| 国产精品美女无圣光视频| 欧美激情视频在线观看| 亚洲人成绝费网站色www|