`
woshixushigang
  • 浏览: 581224 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

Android 控件之ImageSwitcher图片切换器

阅读更多

Android 控件之ImageSwitcher图片切换器

ImageSwitcher是Android中控制图片展示效果的一个控件,如:幻灯片效果...,颇有感觉啊。做相册一绝

源码下载

 

一、重要方法

    setImageURI(Uri uri):设置图片地址

    setImageResource(int resid):设置图片资源库

    setImageDrawable(Drawable drawable):绘制图片

二、实例

   <ImageSwitcher android:id="@+id/switcher"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
    />
   
    <Gallery android:id="@+id/gallery"
        android:background="#55000000"
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
       
        android:gravity="center_vertical"
        android:spacing="16dp"
    />

 

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));

  

三、完整代码

1.布局文件

 

<?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"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
    />
    
    <Gallery android:id="@+id/gallery"
        android:background="#55000000"
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        
        android:gravity="center_vertical"
        android:spacing="16dp"
    />

</RelativeLayout>

 

   2.Java代码

package wjq.WidgetDemo;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
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.OnItemClickListener;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.Gallery.LayoutParams;
import android.widget.ViewSwitcher.ViewFactory;

public class ImageSwitcherDemo extends Activity implements
  OnItemSelectedListener, ViewFactory {
 private ImageSwitcher is;
 private Gallery gallery;

 private Integer[] mThumbIds = { R.drawable.b, R.drawable.c,
   R.drawable.d, R.drawable.f, R.drawable.g,
   };

 private Integer[] mImageIds = { R.drawable.b, R.drawable.c,
   R.drawable.d, R.drawable.f, R.drawable.g, };

 /*
  * (non-Javadoc)
  * 
  * @see android.app.Activity#onCreate(android.os.Bundle)
  */
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  // TODO Auto-generated method stub
  super.onCreate(savedInstanceState);
  requestWindowFeature(Window.FEATURE_NO_TITLE);
  setContentView(R.layout.imageswitcherpage);

  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));

  gallery = (Gallery) findViewById(R.id.gallery);

  gallery.setAdapter(new ImageAdapter(this));
  gallery.setOnItemSelectedListener(this);
 }

 @Override
 public View makeView() {
  ImageView i = new ImageView(this);
  i.setBackgroundColor(0xFF000000);
  i.setScaleType(ImageView.ScaleType.FIT_CENTER);
  i.setLayoutParams(new ImageSwitcher.LayoutParams(
    LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
  return i;
 }

 public class ImageAdapter extends BaseAdapter {
  public ImageAdapter(Context c) {
   mContext = c;
  }

  public int getCount() {
   return mThumbIds.length;
  }

  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(mThumbIds[position]);
   i.setAdjustViewBounds(true);
   i.setLayoutParams(new Gallery.LayoutParams(
     LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
   i.setBackgroundResource(R.drawable.e);
   return i;
  }

  private Context mContext;

 }

 @Override
 public void onItemSelected(AdapterView<?> parent, View view, int position,
   long id) {
  is.setImageResource(mImageIds[position]);

 }

 @Override
 public void onNothingSelected(AdapterView<?> parent) {
  // TODO Auto-generated method stub

 }

}

 

<script type="text/javascript"></script>

<!--done-->

 

分享到:
评论

相关推荐

    Android控件ImageSwitcher图片切换器

    在Android开发中,ImageSwitcher...综上所述,Android控件ImageSwitcher是一个方便的组件,用于实现图片的平滑切换效果,常用于图片轮播场景。通过适配器和自定义动画,我们可以轻松地定制其行为,以满足各种应用需求。

    Android程序技术:图像切换器.pptx

    高级控件-图像切换器 1.1 图像切换器ImageSwitcher 图像切换器ImageSwitcher ImageSwitcher ImageSwitcher 图像切换器ImageSwitcher的主要功能是完成图片的切换显示,即可以单击按钮逐张切换显示的图片。在切换时,...

    Android常用控件ImageSwitcher使用方法详解

    图像切换器使用ImageSwitcher表示,用于实现类似于Windows操作系统下的“Windows照片查看器”中的上一张、下一张切换图片的功能。在使用ImageSwitcher时,必须实现ViewSwitcher.ViewFactory接口,并通过makeView()...

    GridView+ImageSwitcher实现的图片切换(左滑右滑切换)

    而ImageSwitcher是Android提供的一个视图切换器,适用于在两个ImageView之间平滑地切换图片,常用于实现图片轮播或者类似的效果。在这个场景中,我们将讨论如何结合这两种组件来实现一个图片左右滑动切换的功能。 ...

    Android画廊组件实现图片切换

    在Android开发中,画廊组件(Gallery)是一个非常实用的控件,主要用于展示一系列的图片或项目,并允许用户通过左右滑动来切换选择。在这个场景中,我们将探讨如何使用Gallery类以及ImageSwitcher来实现一个典型的...

    Gallery Imageswitcher切换图片demo

    在Android开发中,"Gallery Imageswitcher切换图片demo"是一个典型的图像展示与切换的应用实例,主要涉及了Gallery组件和ImageSwitcher两个核心元素。Gallery是一个可以横向滑动浏览的控件,而ImageSwitcher则是一个...

    Android_控件运用

    5. **Android 控件之 ImageSwitcher** ImageSwitcher 用于在两个图像之间进行快速切换,常用于实现类似图片幻灯片的效果。 6. **Android 控件之 GridView** GridView 可以展示一个二维网格的视图,每个单元格可以...

    Android之ImageSwitcher的实例详解

    Android之ImageSwitcher是Android系统中一个非常有用的控件,它可以实现图片的切换和显示。下面,我们将详细介绍Android之ImageSwitcher的实例详解。 首先,我们需要了解ImageSwitcher控件的基本概念。...

    很赞的引导界面效果Android控件ImageSwitcher实现

    本教程将介绍如何利用Android控件`ImageSwitcher`来实现一个具有视觉吸引力的引导界面。`ImageSwitcher`控件是Android SDK提供的一种用于在两个`ImageView`之间切换图像的组件,非常适合用来展示动态过渡效果,因此...

    Imageswitcher和Gallery实现同步

    `ImageSwitcher` 是一个视图切换器,通常用来显示两张图片之间的平滑过渡,而 `Gallery` 是一个水平滚动的视图,可以用来展示一系列的图片。当我们将这两个组件结合使用时,可以实现一个功能丰富的图片轮播效果。 `...

    android 基本控件demo大集合(android studio版本)

    10. **图片切换器(ImageSwitcher)** ImageSwitcher是一个视图切换器,特别适用于快速切换不同图片。它可以结合ViewAnimator或Animation来实现平滑的过渡效果。 11. **日期/时间选择器(DatePicker/TimePicker)** ...

    ImageSwitcher图片查看示例

    在Android开发中,ImageSwitcher是一个非常实用的控件,常用于实现图片切换的效果,尤其在制作简单的图片浏览器或者相册应用时。本示例主要展示了如何利用ImageSwitcher来创建一个基本的图片查看功能。下面我们将...

    Android 学习(20)ImageSwitcher 和 Gallery

    ImageSwitcher是一个视图切换器,设计用于在两个ImageView之间平滑地切换图像。它通常用于实现类似轮播图的效果,比如应用启动页或者广告展示。ImageSwitcher不仅支持动画效果,还可以通过自定义布局来适应不同的...

    Android 控件大全

    Android控件大全是 Android 开发中所有可用的控件的总结,包括各种效果和说明。了解这些控件的知识点能够帮助开发者快速了解 Android 开发的基础控件,并且能够更好地进行产品开发。 1. Form Widget:一般控件...

    Android利用Gallery和ImageSwitcher实现在线相册图片预览功能(异步加载图片).zip

    当用户在`Gallery`中滑动选择图片时,对应的`ImageView`会被传递给`ImageSwitcher`,然后`ImageSwitcher`开始异步加载新图片,并在加载完成时用动画效果无缝切换。 异步加载图片是为了防止因为网络延迟或者图片大小...

    Android控件例子源码

    `ImageSwitcher` 是一个用于展示图片切换效果的控件,通常在应用中用于实现广告轮播或动态切换图片的场景。它继承自`ViewSwitcher`,并添加了自动切换和手动切换图片的功能。通过这个例子,我们可以学习如何在不同...

    安卓图片轮播广告轮播自动滚屏相关-ImageSwitcher.zip

    `ImageSwitcher` 是Android SDK提供的一种用于在两个视图之间切换的控件,非常适合用来实现图片轮播效果。在这个"安卓图片轮播广告轮播自动滚屏相关-ImageSwitcher.zip"压缩包中,包含了可能与实现这一功能相关的...

    Android应用源码之Gallery+ImageSwitcher+ViewFlipper实现手机查看壁纸效果.zip

    本项目“Android应用源码之Gallery+ImageSwitcher+ViewFlipper实现手机查看壁纸效果”就提供了这样一个功能的实现,通过集成Gallery、ImageSwitcher和ViewFlipper三个组件,为用户提供流畅的图片切换体验。...

    Android中ProgressBar、SeekBar、RatingBar、ImageSwitcher实现相册滑动示例代码

    ImageSwitcher是一个用于快速在两张图片之间切换的视图,常用于实现类似幻灯片的效果。在相册应用中,ImageSwitcher非常适合用于展示相册中的图片,当用户轻扫屏幕时,ImageSwitcher可以平滑地过渡到下一张图片,...

Global site tag (gtag.js) - Google Analytics