• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > 安卓高级组件-----图像切换器,安卓-----切换器

安卓高级组件-----图像切换器,安卓-----切换器

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了安卓四大组件,安卓四大组件详解,安卓四大组件是什么,安卓四大组件的作用,安卓ui组件等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

安卓高级组件-----图像切换器,安卓-----切换器


        安卓图像切换器<ImageSwitch>是一种能够实现图像序列播放的组件,类似于“windows照片查看器”点击左右按钮实现按顺序查看照片。ImageSwitch实际上是继承了ViewSwitch,重写了ViewSwitch的showNext() showprevious()两个方法,这使得查看上下某张图片变得十分简单。

        ImageSwitch提供了一个ViewFactory接口,ViewFactory生成的View组件必须是ImageView。进行图片切换时,只要调用setImageResource(int resid) 方法更换图片。

图片切换器的实现:

1.新建工程,布局中放入ImageSwitch组件和两个按钮

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:orientation="vertical" >

        <ImageSwitcher
            android:id="@+id/imageSwitcher1"
            android:layout_weight="1"
            android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
        </ImageSwitcher>

        <LinearLayout
            android:layout_weight="1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/button1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="上一张" />

            <Button
                android:id="@+id/button2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="下一张" />

        </LinearLayout>

    </LinearLayout>

2.在主活动创建一个图像id数组和图像切换器对象还有按钮

    private int[] image = new int[]{R.drawable.photo1,R.drawable.photo2,
            R.drawable.photo3,R.drawable.photo4};              //图像数组
    
    private int index = 0;             //下标
    
    private ImageSwitcher is;         //切换器

private Button up,down;

3.获取组件实例化并设置ImageSwitch.setFactory()

        is = (ImageSwitcher)findViewById(R.id.imageSwitcher1);
        
        up = (Button)findViewById(R.id.button1);
        down = (Button)findViewById(R.id.button2);
        up.setOnClickListener(this);
        down.setOnClickListener(this);
        
        is.setFactory(new ViewFactory() {
            
            @Override
            public View makeView() {
                ImageView imageView = new ImageView(MainActivity.this);
                imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
                                
                return imageView;
            }
        });
        is.setImageResource(image[index]);
    }

4.改按钮加监听,监听接口在Activity实现。此处注意,监听事件加上以后,获取的是点击的View组件id,通过switch判断点击的按钮是上一张还是下一张的按钮。

其实,监听接口使用的是View的监听接口,返回的对象是View,通过View.getId()获取

        up.setOnClickListener(this);
        down.setOnClickListener(this);

    public void onClick(View v) {
        
        switch(v.getId()){
        
        case R.id.button1:
            
            if(index > 0){
                index --;
            }else {
                index = image.length - 1;
            }
            is.setImageResource(image[index]);break;
            
        case R.id.button2:
            if(index == image.length - 1){
                index = 0;
            }else {
                index ++;
            }
            is.setImageResource(image[index]);break;            
        }
        
    }

运行效果:

总结:我们主Activity实现的View的接口, public void onClick(View v) {},在这个方法里面我们队v进行判断,反应了安卓组件是继承自View类。

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 安卓高级组件-----网格视图,安卓-----网格
  • 安卓高级组件-----图像切换器,安卓-----切换器
  • 安卓高级组件-----进度条,安卓-----进度条
  • 安卓界面高级组件------拖动条和评星条,安卓------拖动
  • 安卓界面组件----时间日期拾取器,安卓拾取
  • 安卓界面基本组件------计时器,安卓------计时器
  • 安卓高级组件-----自动编辑文本框,安卓-----文本框
  • 安卓组件------列表选择框,安卓组件------列表
  • 安卓界面组件----列表视图,安卓组件----视图
  • 安卓四大组件之内容提供者,安卓四大提供者

相关文章

  • 2017-05-227.6.1 Socket学习网络基础准备
  • 2017-05-26Android之网络数据存储,android数据存储
  • 2017-05-26android TextView实现跑马灯效果
  • 2017-05-26Android Studio:Failed to resolve ***,androidresolve
  • 2017-05-26android studio 中去除应用标题栏,androidstudio
  • 2017-05-26三年0故障总结,提升代码质量的秘诀
  • 2017-05-26java.lang.IllegalArgumentException: Illegal character in query at index 261,
  • 2017-05-228.3.7 Paint API之—— Xfermode与PorterDuff详解(四)
  • 2017-05-26[Android]Android布局优化之&lt;include /&gt;,androidinclude
  • 2017-10-10android 基于Zxing的二维码的二维码扫描之横屏扫描

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 老人桌面===花花绿绿的桌面,老人桌面
    • Android群英传笔记系列二view的绘制(一),android群英
    • 解决通过Intent调用系统拍照程序,返回图片太小的问题,intent调用
    • MaterialRefreshLayout,swiperefreshlayout
    • 3.7 AnsyncTask异步任务
    • zabbix 应用系列之nginx tcp stream监控
    • android:Activity启动模式之singleTask(二)
    • Android Studio添加Parcelable序列化小工具(快速提高开发效率)
    • Android中AsyncTask基本用法与源码剖析(API 23)
    • Android5 Zygote 与 SystemServer 启动流程分析

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有