最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android實現(xiàn)圖片瀏覽器示例

 更新時間:2014年07月30日 09:53:31   投稿:shichen2014  
這篇文章主要介紹了Android實現(xiàn)圖片瀏覽器示例,需要的朋友可以參考下

本文所述為一個基礎(chǔ)的Android圖片瀏覽器代碼,是仿寫Google原版實現(xiàn)的,代碼中實現(xiàn)了主要的實現(xiàn)過程和方法,具體的完善還需要自己添加,代碼中有很多注釋,可幫助新手們快速理解代碼,使用了部分圖像資源。

主要功能代碼如下:

package com.android.coding;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.Gallery.LayoutParams;
import android.widget.ViewSwitcher.ViewFactory;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
public class ViewPicturesActivity extends Activity {
 ImageSwitcher imageSwitcher; //聲明ImageSwitcher對象,圖片顯示區(qū)域
 Gallery gallery;       //聲明Gallery對象,圖片列表索引
 int imagePosition;      //標(biāo)記圖片數(shù)組下標(biāo),用于循環(huán)顯示
 //聲明圖片整型數(shù)組
 private int[] images = {
  R.drawable.image1,R.drawable.image2,
  R.drawable.image3,R.drawable.image4,
  R.drawable.image5,R.drawable.image6,
  R.drawable.image7,R.drawable.image8,
  R.drawable.image9,R.drawable.image10,
  R.drawable.image11,R.drawable.image12,
  R.drawable.image13,R.drawable.image14,
  R.drawable.image15,R.drawable.image16,
  R.drawable.image17};
 
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    //通過控件的ID獲得imageSwitcher的對象
    imageSwitcher = (ImageSwitcher) findViewById(R.id.switcher);
    //設(shè)置自定義的圖片顯示工廠類
    imageSwitcher.setFactory(new MyViewFactory(this));
    //通過控件的ID獲得gallery的對象
    gallery = (Gallery) findViewById(R.id.gallery);
    //設(shè)置自定義的圖片適配器
    gallery.setAdapter(new ImageAdapter(this)); 
    //實現(xiàn)被選中的事件監(jiān)聽器
    gallery.setOnItemSelectedListener(new OnItemSelectedListener() {        
  @Override
  public void onItemSelected(AdapterView<?> parent, View view,
   int position, long id) {
  //通過求余數(shù),循環(huán)顯示圖片
  imageSwitcher.setImageResource(images[position%images.length]);  
  }
  @Override
  public void onNothingSelected(AdapterView<?> parent) {
  // TODO Auto-generated method stub  
  }
 });    
  }
  
  //自定義圖片適配器,繼承BaseAdapter
  class ImageAdapter extends BaseAdapter{   
 private Context context; //定義上下文
 
 //參數(shù)為上下文的構(gòu)造方法
 public ImageAdapter(Context context) {
  this.context = context;
 }
   
 //得到圖片的大小
 @Override
 public int getCount() {  //設(shè)置為整型的最大數(shù)
  return Integer.MAX_VALUE;
 }

 //得到指定圖片的對象
 @Override
 public Object getItem(int position) {  
  return null;
 }
 
 //得到指定圖片的對象的ID
 @Override
 public long getItemId(int position) {  
  return 0;
 }

 //顯示圖標(biāo)列表
 @Override
 public View getView(int position, View convertView, ViewGroup parent) {
  ImageView iv = new ImageView(context); //創(chuàng)建ImageView對象
  iv.setImageResource(images[position%images.length]);  //設(shè)置循環(huán)顯示圖片
  iv.setAdjustViewBounds(true); //圖片自動調(diào)整顯示
  //設(shè)置圖片的寬和高
  iv.setLayoutParams(new Gallery.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
  return iv; //返回ImageView對象
 }   
  }
  
  //自定義圖片顯示工廠類,繼承ViewFactory
  class MyViewFactory implements ViewFactory{
 private Context context; //定義上下文
 
 //參數(shù)為上下文的構(gòu)造方法
 public MyViewFactory(Context context) {
  this.context = context;
 }

 //顯示圖標(biāo)區(qū)域
   @Override
 public View makeView() {
  ImageView iv = new ImageView(context); //創(chuàng)建ImageView對象
  iv.setScaleType(ImageView.ScaleType.FIT_CENTER); //圖片自動居中顯示
  //設(shè)置圖片的寬和高
  iv.setLayoutParams(new ImageSwitcher.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
  return iv; //返回ImageView對象
 }   
  }  
}

本文所述僅為其主要功能代碼部分,讀者可以對其進一步加以完善。由圖像查看器還可以擴展出很多實用的Android圖像操作功能,這些都是作為一個android應(yīng)用開發(fā)新手應(yīng)該搞定的技巧。

相關(guān)文章

  • Android數(shù)據(jù)加密之Des加密

    Android數(shù)據(jù)加密之Des加密

    這篇文章主要為大家詳細介紹了Android數(shù)據(jù)加密之Des加密,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Android實現(xiàn)的簡單藍牙程序示例

    Android實現(xiàn)的簡單藍牙程序示例

    這篇文章主要介紹了Android實現(xiàn)的簡單藍牙程序,結(jié)合實例形式分析了Android藍牙程序的原理與客戶端、服務(wù)器端具體實現(xiàn)步驟,需要的朋友可以參考下
    2016-10-10
  • android 使用okhttp可能引發(fā)OOM的一個點

    android 使用okhttp可能引發(fā)OOM的一個點

    這篇文章主要介紹了android 使用okhttp可能引發(fā)OOM的一個點,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Android7.0中關(guān)于ContentProvider組件詳解

    Android7.0中關(guān)于ContentProvider組件詳解

    本文描述了Android7.0中關(guān)于ContentProvider組件實現(xiàn)原理以及ContentProvider發(fā)布者和調(diào)用者這兩在Framework層是如何實現(xiàn)的。
    2017-11-11
  • android studio 4.0 新建類沒有修飾符的方法

    android studio 4.0 新建類沒有修飾符的方法

    這篇文章主要介紹了android studio 4.0 新建類沒有修飾符的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • android 應(yīng)用退出時不播放動畫的解決方法

    android 應(yīng)用退出時不播放動畫的解決方法

    在Android應(yīng)用中,默認(rèn)情況下,當(dāng)用戶點擊返回按鈕退出應(yīng)用時,系統(tǒng)會為應(yīng)用添加一個默認(rèn)的退出動畫效果,本文將介紹如何在Android應(yīng)用中禁止退出動畫的播放,感興趣的朋友一起看看吧
    2024-05-05
  • Activity生命周期實例講解

    Activity生命周期實例講解

    這篇文章介紹了Activity中7個與生命周期有關(guān)的函數(shù),使用實例代碼說明他們的使用方法
    2013-11-11
  • Android UI設(shè)計系列之自定義ListView仿QQ空間阻尼下拉刷新和漸變菜單欄效果(8)

    Android UI設(shè)計系列之自定義ListView仿QQ空間阻尼下拉刷新和漸變菜單欄效果(8)

    這篇文章主要介紹了Android UI設(shè)計系列之自定義ListView仿QQ空間阻尼下拉刷新和漸變菜單欄效果,具有一定的實用性和參考價值,感興趣的小伙伴們可以參考一下
    2016-06-06
  • Android項目開發(fā)常用工具類LightTaskUtils源碼介紹

    Android項目開發(fā)常用工具類LightTaskUtils源碼介紹

    LightTaskUtils是一個輕量級的線程管理工具,本文通過實例代碼給大家詳細介紹Android項目開發(fā)常用工具類LightTaskUtils的相關(guān)知識,感興趣的朋友一起看看吧
    2022-06-06
  • android自定義view制作圓形進度條效果

    android自定義view制作圓形進度條效果

    這篇文章主要為大家詳細介紹了android自定義view制作圓形進度條效果的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01

最新評論

龙山县| 潢川县| 休宁县| 宜兰市| 甘德县| 淄博市| 浑源县| 万盛区| 民县| 宝清县| 师宗县| 信宜市| 西乌珠穆沁旗| 芦山县| 伊吾县| 淮南市| 施秉县| 五峰| 禄丰县| 辽阳县| 内江市| 昔阳县| 昆山市| 临湘市| 肃宁县| 新乡县| 客服| 泽州县| 土默特右旗| 西青区| 长岭县| 姜堰市| 灯塔市| 张北县| 两当县| 子洲县| 蒲城县| 泸州市| 常宁市| 松溪县| 嘉荫县|