Android——ImageSwitcher 图片切换

时间:2023-02-21 19:33:43

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&amp&semi;lt&semi;ImageSwitcher图片切换组件&period;二十六&period;&amp&semi;gt&semi;

    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 自学之网格试图&lpar;GridView&rpar;和图片切换器&lpar;ImageSwitcher&rpar;功能和用法

    网格试图(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. php 时间倒计时

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

  2. Gatling-&gt&semi;次时代性能测试利器

    Gatling作为一款开源免费的性能测试工具越来越受到广大程序员的欢迎.免费当然是好的,最缺钱的就是程序员了;开源更好啊,缺啥功能.想做定制化的可以自己动手,丰衣足食.其实我最喜欢的原因是其提供了简洁 ...

  3. ExtJs之文本框及数字输入

    结合HTML来理解, 比较容易. <!DOCTYPE html> <html> <head> <title>ExtJs</title> &l ...

  4. Evaluation

    precision是tp/(tp+fp),检索结果中正确的比例 recall是tp/(tp+fn),所有需要被检索出来的比例 1.真实情况:恶性,检查结果:恶性,这种情况就叫做:true positv ...

  5. PHP--变量部分知识点

    PHP全局变量 PHP全局变量作用域不同与C,在函数内部不可以使用全局变量,要在函数内部使用全局变量需要,global $var或者使用超全局变量数组$GLOBALS['var']. 静态变量 PHP ...

  6. HDU 1090 A&plus;B for Input-Output Practice &lpar;II&rpar;

    #include <cstdio> int main() { int n,a,b; scanf("%d",&n); ; i<=n; i++) { scan ...

  7. os模块、os&period;path模块、shutil模块、configparser模块、subprocess模块

    一.os模块 os指的是操作系统 该模块主要用于处理与操作系统相关的操作,常用的是文件操作(读.写.删.复制.重命名). os.getcwd()  获取当前文件所在的文件夹路径 os.chdir()  ...

  8. Django之cookie&amp&semi;session

    cookie Cookie 是在 HTTP 协议下,服务器或脚本可以维护客户工作站上信息的一种方式.Cookie 是由 Web 服务器保存在用户浏览器(客户端)上的小文本文件,它可以包含有关用户的信息 ...

  9. C&num;里面获取web和非web项目路径

    非Web程序获取路径几种方法如下: 1.AppDomain.CurrentDomain.BaseDirectory  2.Environment.CurrentDirectory 3.HttpRunt ...

  10. Raft一致性算法

    所有的分布式系统,都面临的一个问题是多个节点之间的数据共享问题,这个和团队协作的道理是一样的,成员可以分头干活,但总是需要共享一些必须的信息,比如谁是 leader, 都有哪些成员,依赖任务之间的顺序 ...