`
jandroid
  • 浏览: 1906791 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

【android基础学习之六】——常用效果1

 
阅读更多

声明:学习的书籍《Android应用开发揭秘》,这里记录学习该书籍的日志,引用的相关代码与总结描述,没有商业的用途,完全是自我学习的一个记录,刚刚学习不可避免会出现很多问题,若是有错误还请大家多多批评。

继续学习《android应用开发揭秘》这本书,这里把基础控件的学习进行了分类,下面两篇博客主要是一些常用的效果

一、 拖动效果(Gallery)

拖动效果是现在智能手机的一个不可缺少的功能,Android平台中实现拖动效果,主要是使用了Gallery控件,Gallery英文是画廊的意思,顾名思义存放这显示的图片,存放图片资源容器是继承自BaseAdapter类的派生类。当然我们也可以通过setOnItemClickListener监听其事件。

【注意】Gallery 组件一般用于显示图像列表,因此也可称相册组件 Gallery 与GridView 的区别是Gallery只能水平显示一行,而且支持水平滑动效果。也就是说,单击、选中或拖动Gallery 中的图像,Gallery中的图像列表会根据不同的情况向左或右移动,直到显示最后一个图像为止.

实例分析:基于上述介绍,把要显示的图片资源索引存在一个int类型数组中,并且要显示哪个图片,通过setImageResource方法来设置ImageView要显示的图片。

关键源码:

main.xml布局文件:

注意,以下ImageAdapter类继承自BaseAdapter,并重写其方法

而实际Activity01中只要把adapter付给Gallery对象,并设置监听事件即可“

实例效果:

二、 切换图片(ImageSwitcher)

该功能类似于很多图片浏览器,上一张下一张图片进行切换,ImageSwitcher在实现该效果时,需要设置一个ViewSwitcher.ViewFactory,注意ViewSwitcher.ViewFactory是个接口,目的:在视图转换器(ViewSwitcher)中创建视图。并通过makeView()方法来显示图片。

公共方法:public abstract View makeView ()

创建一个用于添加到视图转换器(ViewSwitcher)中的新视图

关键源码:

【扩展点】ViewSwitcher

一、结构

public class ViewSwitcher extends ViewAnimator

Java.lang.Object

android.view.View

android.view.ViewGroup

android.widget.FrameLayout

android.widget.ViewAnimator

android.widget.ViewSwitcher

已知直接子类:ImageSwitcher, TextSwitcher

  二、概述

     在两个视图间转换时显示动画,有一个可以创建这些视图的工厂类。你可以用工厂来创建这些视图,也可以自己创建。一个ViewSwitcher只允许包含两个子视图,且一次仅能显示一个。

  (译者注:与ViewFlipper类相似,但该类不常用,常用其两个子类ImageSwitcher:转换图片时增加动画效果; TextSwitcher: 转换文字时增加动画效果; 其实例见apidemos中ImageSwitcher实例和TextSwitcher实例)

  三、内部类

    interface ViewSwitcher.ViewFactory

    在一个ViewSwitcher里创建视图

…………….

五、公共方法

public void setFactory (ViewSwitcher.ViewFactory factory)

  设置用来生成将在视图转换器中切换的两个视图的工厂。也可以调用两次 addView(android.view.View, int, android.view.ViewGroup.LayoutParams)来替代使用工厂的方法。

参数: factory 用来生成转换器内容的视图工厂

引用自:http://dev.10086.cn/cmdn/wiki/index.php?doc-view-4764.html

实例效果:

三、网格视图(GridVIew)

网格视图的排列方式与矩阵类似,它所需要显示元素同样适用BaseAdapter来实现,适用方法,类似于Gallery控件

关键代码:

四、卷轴视图(ScrollView)

卷轴视图主要用于,一页数据显示不开后,需要滚动来显示的视图。

实例分析:ScrollView定义个线性布局,线性布局中一个TextView以及一个Button,每点击一次按钮就增加一个线性布局。

关键源码:

在按钮点击事件里:

今天学习到P101页

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics