public class ImageSwitcherActivity extends Activity implements OnClickListener,
        ViewFactory {
    // 所有要显示图片资源索引
    private static final Integer[] imageList = { R.drawable.button1,
            R.drawable.button2, R.drawable.button3, R.drawable.button31,
            R.drawable.ic_launcher };
    // 创建ImageSwitcher对象
    private ImageSwitcher m_Switcher;
    // 索引
    private static int index = 0;
    // “下一张”按钮ID
    private static final int BUTTON_DWON_ID = 0X123456;
    // "上一张"按钮ID
    private static final int BUTTON_UP_ID = 0X123457;
    // ImageSwitcher对象的ID
    private static final int SWITCHER_ID = 0X123458;

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
            // 创建一个线性布局LinearLayout
            LinearLayout main_view = new LinearLayout(this);
            // 创ImageSwithcer对象
            m_Switcher = new ImageSwitcher(this);
            // 在线性布局中添加ImageSwitcher视图
            main_view.addView(m_Switcher);
            // 设置ImageSwither对象的ID
            m_Switcher.setId(SWITCHER_ID);
            // 设置ImageSwithcer对象的数据源
            m_Switcher.setFactory(this);
            m_Switcher.setImageResource(imageList[index]);
            // 设置显示上面创建的线性布局
            setContentView(main_view);
            // 设置按钮位置属性
            LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(
                    100, 100);
            // 创建“下一张”按钮
            Button next = new Button(this);
            next.setId(BUTTON_DWON_ID);
            next.setText("下一张");
            next.setOnClickListener(this);
            main_view.addView(next, param);

// 创建“上一张”按钮
            Button pre = new Button(this);
            pre.setId(BUTTON_UP_ID);
            pre.setText("上一张");
            pre.setOnClickListener(this);
            main_view.addView(pre, param);
    }

@Override
    public View makeView() {
        // 将所有图片通过ImageView来显示

return new ImageView(this);
    }

// 事件监听、处理
    @Override
    public void onClick(View v) {
        switch (v.getId()) {
        // 下一页
        case BUTTON_DWON_ID:
            index++;
            if (index >= imageList.length) {
                index = 0;
            }
            // 设置ImageSwithcer对象资源索引
            m_Switcher.setImageResource(imageList[index]);
            break;

case BUTTON_UP_ID:
            index--;
            if (index < 0) {
                index = imageList.length - 1;
            }
            // 设置ImageSwithcer对象资源索引
            m_Switcher.setImageResource(imageList[index]);
            break;
        default:
            break;
        }
    }

}

Android——ImageSwitcher 图片切换的更多相关文章

  1. Android 高级UI设计笔记12:ImageSwitcher图片切换器

    1. ImageSwitcher ImageSwitcher是Android中控制图片展示效果的一个控件,如:幻灯片效果...,颇有感觉啊.做相册一绝 2. 重要方法 setImageURI(Uri  ...

  2. 从零開始学android&lt;ImageSwitcher图片切换组件.二十六.&gt;

    ImageSwitcher组件的主要功能是完毕图片的切换显示,比如用户在进行图片浏览的时候.能够通过button点击一张张的切换显示的图片,并且使用ImageSwitcher组件在每次切换的时候也能够 ...

  3. Android学习笔记 ImageSwitcher图片切换组件的使用

    activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&qu ...

  4. ImageSwitcher 图片切换器

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  5. ImageSwitcher图片切换的简单用例

    ImageSwitcher的原理:ImageSwitcher有两个子View:ImageView,当左右滑动的时候,就在这两个ImageView之间来回切换来显示图片 实现左右滑动切换图片 BaseA ...

  6. Android 单击图片切换效果

    新建一个Android项目,命名为FrameLayout 此实例主要操作src文件夹下的MainActivity.Java类文件和res/layout下的activity_main.xml布局文件 1 ...

  7. Android 自学之网格试图(GridView)和图片切换器(ImageSwitcher)功能和用法

    网格试图(GridView)用于在界面上按行,列分布的方式来显示多个组件. GridView和ListView有共同的父类:AbsListView,因此GridView和ListView具有一定的相似 ...

  8. Android中使用ImageViewSwitcher实现图片切换轮播导航效果

    前面写过了使用ViewFlipper和ViewPager实现屏幕中视图切换的效果(ViewPager未实现轮播)附链接: Android中使用ViewFlipper实现屏幕切换 Android中使用V ...

  9. Android应用开发学习之图片切换器

    作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz 如果我们要实现类似Windows的照片查看器切换上一张下一张照片的效果,可以使用图片切换器ImageSwitcher ...

随机推荐

  1. Hibernate 抓取策略fetch-1 (select join subselect)

    原文 :http://4045060.blog.51cto.com/4035060/1088025 部分参考:http://www.cnblogs.com/rongxh7/archive/2010/0 ...

  2. xmodem, ymodem & zmodem

    这三个是modem文件传输协议. https://en.wikipedia.org/wiki/XMODEM https://en.wikipedia.org/wiki/YMODEM https://e ...

  3. golang rbac框架

    在 https://github.com/mikespook/gorbac/tree/v1.0 github上新的版本是开发板,得用这里的老版 demo package main import ( & ...

  4. 返回顶部(解决IE6固定定位)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. 黄聪:WordPress 备案期间临时关闭站点设置404

    在header.php文件顶部添加如下代码即可: <? if( !is_user_logged_in() ){ wp_die('网站备案审核中……', '网站备案', array('respon ...

  6. WebAPI 安全性 使用TOKEN+签名验证(下)

    //根据请求类型拼接参数 NameValueCollection form = HttpContext.Current.Request.QueryString; string data = strin ...

  7. [jQuery].scrollTop() 函数详解

    scrollTop()函数用于设置或返回当前匹配元素相对于垂直滚动条顶部的偏移. 当一个元素的实际高度超过其显示区域的高度时,在一定的设置下,浏览器会为该元素显示相应的垂直滚动条.此时,scrollT ...

  8. SparkSql官方文档中文翻译(java版本)

    1 概述(Overview) 2 DataFrames 2.1 入口:SQLContext(Starting Point: SQLContext) 2.2 创建DataFrames(Creating ...

  9. UVA1347 旅游(二维递归DP)

    旅游 [题目链接]旅游 [题目类型]DP &题解: 紫书P269 代码很简单,但思路很难.很难能想到要把一个圈分成2条线段,很难想到d(i,j)表示的是已经走过max(i,j)还需要的距离值, ...

  10. CF 191C Fools and Roads lca 或者 树链剖分

    They say that Berland has exactly two problems, fools and roads. Besides, Berland has n cities, popu ...