文本切换器(TextSwitcher)的功能与用法

	TextSwitcher集成了ViewSwitcher, 因此它具有与ViewSwitcher相同的特性:可以在切换View组件时使用动画效果。与ImageSwitcher相似的是,使用TextSwitcher也需要设置一个ViewFactory。与ImageSwitcher不同的是,TextSwitcher所需要的ViewFactory的makeView()方法必须返回一个TextView组件。

<TextSwitcher与TextView的功能有点类似,它们都可用于显示文本内容,区别在于TextSwitcher的效果更炫,它可以指定文本切换时的动画效果。>

不多说,直接上代码了。界面布局文件如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <!-- 定义一个TextSwitcher,并制定了文本切换时的动画效果 -->

    <TextSwitcher
        android:id="@+id/textSwitcher"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAlignment="center"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:inAnimation="@android:anim/slide_in_left"
        android:outAnimation="@android:anim/slide_out_right"
        android:onClick="next"
        >
    </TextSwitcher>

</RelativeLayout>

上面的布局文件中定义了一个TextSwitcher,并为该文本切换指定了文本切换时的动画效果,接下来Activity只要为该TextSwitcher设置ViewFactory,该TextSwitcher即可正常工作。

如下是Activity代码:

/**
 * TextSwitcher practice.
 * @author peter.
 *
 */
public class MainActivity extends Activity {

    private TextSwitcher textSwitcher;

    // 要显示的文本
    String[] strs = new String[]
    		{
    		 "one",
    		 "two",
    		 "three"
    		 };
    private int curStr;

	@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textSwitcher = (TextSwitcher) findViewById(R.id.textSwitcher);
        textSwitcher.setFactory(new ViewFactory() {

			@Override
			public View makeView() {
				TextView tv = new TextView(MainActivity.this);
				tv.setTextSize(40);
				// 字体颜色品红
				tv.setTextColor(Color.MAGENTA);
				return tv;
			}
		});
        //调用next方法显示下一个字符串
        next(null);
    }

	// 事件处理函数,控制显示下一个字符串
	public void next(View source) {
		textSwitcher.setText(strs[curStr++ % strs.length]);
	}

}

时间: 2024-11-09 05:05:46

文本切换器(TextSwitcher)的功能与用法的相关文章

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

网格试图(GridView)用于在界面上按行,列分布的方式来显示多个组件. GridView和ListView有共同的父类:AbsListView,因此GridView和ListView具有一定的相似性.GridView和ListView的主要区别在于:ListView只是一个方向上的分布:而GridView则会在两个方向上分布. 与ListView相似的是,GridView也需要通过Adapter来提供显示数据:可以通过SimpleAdapter来为GridView提供数据,也可以通过开发Ba

ImageSwitcher的功能和用法

先看看继承关系,ImageSwitcher和TextSwitcher的继承关系是一样的.两个重要的父类:ViewSwitcher和ViewAnimator继承于ViewSwitcher,说明具备了切换功能继承于ViewAnimator,说明具备了动画功能 重要方法 setImageURI(Uri uri):设置图片地址 setImageResource(int resid):设置图片资源库 setImageDrawable(Drawable drawable):绘制图片 实例: MainActi

ViewSwitcher的功能和用法

ViewSwitcher 代表了视图切换组件, 本身继承了FrameLayout ,可以将多个View叠在一起 ,每次只显示一个组件.当程序控制从一个View切换到另个View时,ViewSwitcher 支持指定动画效果. 为了给ViewSwitcher 添加多个组件, 一般通过ViewSwitcher 的setFactory 方法为止设置ViewFactory ,并由ViewFactory为之创建View 即可. 下面通过一个实例来介绍 ViewFactory的用法.(仿Android系统L

Android 自学之画廊视图(Gallery)功能和用法

Gallery与之前讲的Spinner有共同的父类:AbsSpinner,表明Gallery和Spinner都是一个列表框.他们之间的区别在于Spinner显示的是一个垂直的列表框,而Gallery显示的是一个水平的列表框.Gallery与Spinner有一个区别:Spinner的作用是供用户选择,而Gallery则允许用户通过拖动来查看上一个.下一个列表项. Gallery常用的XML属性及相关方法 XML属性 相关方法 说明 android:animationDuration setAnim

KVM(多电脑切换器)

KVM:Keyboard Video Mouse的缩写.KVM 交换机通过直接连接键盘.视频和鼠标 (KVM) 端口,让您能够访问和控制计算机.KVM 技术无需目标服务器修改软件.这就意味着可以在 Windows 的 BIOS 环境下,随时访问目标计算机.KVM 提供真正的主板级别访问,并支持多平台服务器和串行设备.KVM 技术已经从最初的基础SOHO办公型,发展成为企业 IT 基础机房设施管理系统.可以从kvm 客户端管理软件轻松的直接访问位于多个远程位置的服务器和设备.KVM over IP

容易使用的读取文本播放器 Text to Speech Maker 2.5

FilmConvert Stand Alone 1.216 MacOSXAutodesk.Smoke.v2015.SP1.MacOSX 1DVDAutodesk Smoke 2015提供更快的效能和更平易近人的价格专 为以Mac计算机作业的小型工作室设计,Smoke 2015专业影音特效和剪辑工具现在具备了 3D追踪.新的Timeline FX工作流程.针对搭载OS X Mavericks操作系统的新版Mac Pro新增硬件支持和系统运作的最佳化,并与Final Cut Pro X提供更佳的互通

vue2 3d 切换器

空闲时写了一个3d切换器,灵感来自于转行前画3d工程图,效果如图: 功能:按住鼠标中间,变为3d模式,点击6个页面中的某一个页面,页面旋转放大,恢复到2d图形,3d图消失.再次点击鼠标中间,恢复为3d(含动画效果),按住中键不放,可以左右或者上下拖动,3d图片做720°旋转. 效果可在:此处查看 请使用chrome打开 转动原理:由于正方体只有6个面,所以ul+6个li标签,先做出正方体布局.li标签布局出正方向后,都是相对于ul标签的位置,所以转动ul标签,正方形并不会散架.鼠标水平移动X为u

android学习之--网格视图(GridView)和图像切换器(ImageSwitcher)

         GridView用于在界面上按行.列分布显示多个组件.GridView和ListView有共同父类:AbsListView.GridView与ListView的区别在于:ListView只在一个方向上分布,GridView在两个方向上分布.所以使用GridView时一般都指定numColumns大于1,否则该属性默认值为1,就意味着改GridView只有一列,那就变成了ListView GridView的xml属性 android:strtchMode 的值为:      Im

为什么选择迈拓维矩为VGA矩阵切换器生产厂家

VGA矩阵切换器属于模拟视频矩阵,其主要适用于小型的视频系统,如多媒体会议室.教育培训室等.VGA矩阵切换器与计算机用VGA线缆进行连接,用于传输高解析度计算机视频信号. 为什么选择VGA矩阵切换器生产厂家 当前,在北京.上海.广东等地区生产VGA矩阵切换器的厂家很多,但是各厂家的型号.标准.外形都不相同,在质量上也存在着差异.而广大VGA矩阵切换器客户会被企业的广告所迷惑,无法下手选择设备.此外,购买VGA矩阵切换器应主要产品的适用性,避免产品在工程上使用性能不符等问题. 为什么选择迈拓维矩