zoukankan      html  css  js  c++  java
  • Android 中文 API (17) —— TextSwitcher


    前言

      本章内容是android.widget.TextSwitcher,译为文字转换器控件(引自系出名门系列),翻译来自madgoat ,欢迎大家访问他的博客:http://madgoat.cn/,再次感谢 madgoat !期待你一起参与Android API 的中文翻译,联系我over140@gmail.com。 

    声明

      欢迎转载,但请保留文章原始出处:)

        madgoat:http://madgoat.cn/

        博客园:http://www.cnblogs.com

        农民伯伯: http://www.cnblogs.com/over140/

    版本

      Android 2.2 r1  

    正文

      一、结构

        public class TextSwitcher extends ViewSwitcher

     

        java.lang.Object

          android.view.View

            android.view.ViewGroup

              android.widget.FrameLayout

                                  android.widget.ViewAnimator

                                        android.widget.ViewSwitcher

                                              android.widget.TextSwitcher

      二、类概述

        

        ViewSwitcher仅仅包含子类型TextView。TextSwitcher被用来使屏幕上的label产生动画效果。每当setText(CharSequence)被调用时,TextSwitcher使用动画方式将当前的文字内容消失并显示新的文字内容。(译者注:改变文字时增加一些动画效果)

      三、构造函数

             public TextSwitcher (Context context)

             创建一个新的空TextSwitcher

                       参数

    context 应用程序上下文

     

             public TextSwitcher (Context context, AttributeSet attrs)

             使用提供的contextattributes来创建一个空的TextSwitcher

                       参数

                                context 应用程序环境

                                attrs                   属性集合

      四、公共方法

             public void addView (View child, int index, ViewGroup.LayoutParams params)

             根据指定的布局参数新增一个子视图

                       参数

                                child          新增的子视图

                                index         新增子视图的位置

                                params    新增子视图的布局参数

             抛出异常

                       IllegalArgumentException       当子视图不是一个TextView实例时

             public void setCurrentText (CharSequence text)

             设置当前显示的文本视图的文字内容。非动画方式显示。

                       参数

                                text           需要显示的新文本内容

             public void setText (CharSequence text)

             设置下一视图的文本内容并切换到下一视图。可以动画的退出当前文本内容,显示下一文本内容。

                       参数

                                text           需要显示的新文本内容

      五、代码示例

        5.1  摘自APIDemos->View->TextSwitcher

          5.1.1  Java

    public class TextSwitcher1 extends Activity implements ViewSwitcher.ViewFactory,
            View.OnClickListener {

        
    private TextSwitcher mSwitcher;

        
    private int mCounter = 0;

        @Override
        
    protected void onCreate(Bundle savedInstanceState) {
            
    super.onCreate(savedInstanceState);

            setContentView(R.layout.text_switcher_1);

            mSwitcher 
    = (TextSwitcher) findViewById(R.id.switcher);
            mSwitcher.setFactory(
    this);

            Animation in 
    = AnimationUtils.loadAnimation(this,
                    android.R.anim.fade_in);
            Animation out 
    = AnimationUtils.loadAnimation(this,
                    android.R.anim.fade_out);
            mSwitcher.setInAnimation(in);
            mSwitcher.setOutAnimation(out);

            Button nextButton 
    = (Button) findViewById(R.id.next);
            nextButton.setOnClickListener(
    this);

            updateCounter();
        }

        
    public void onClick(View v) {
            mCounter
    ++;
            updateCounter();
        }

        
    private void updateCounter() {
            mSwitcher.setText(String.valueOf(mCounter));
        }

        
    public View makeView() {
            TextView t 
    = new TextView(this);
            t.setGravity(Gravity.TOP 
    | Gravity.CENTER_HORIZONTAL);
            t.setTextSize(
    36);
            
    return t;
        }
    }

          5.1.2  XML

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width
    ="match_parent"
        android:layout_height
    ="match_parent"
        android:orientation
    ="vertical">

        
    <Button android:id="@+id/next"
            android:layout_width
    ="wrap_content"
            android:layout_height
    ="wrap_content" 
            android:text
    ="@string/text_switcher_1_next_text" />

        
    <TextSwitcher android:id="@+id/switcher"
            android:layout_width
    ="match_parent"
            android:layout_height
    ="wrap_content" />

    </LinearLayout>

        5.2  其他示例

          http://tech.ddvip.com/2010-02/1265125017144500.html

          http://www.javaeye.com/topic/569985

      六、下载

        CSDN:http://download.csdn.net/source/2774515

    结束

       madgoat非常积极,接到本章译稿后就迅速的翻译出来,并且附带完善的代码和截图,现在已经在翻译下一篇译稿,感谢他如此积极参与!

  • 相关阅读:
    玩家的numpertpry 对象 中 不仅仅要同步 君主武将的等级,阶级也要同步
    synchronized 的真正含义
    学习笔记——WPF
    学习笔记——AOP
    好记性不如烂笔头——WebService与Remoting
    好记性不如烂笔头——垃圾回收
    “返回顶部”实现一例
    ASP.NET MVC脚本及样式压缩
    设计模式学习笔记——迭代器模式
    设计模式学习笔记——策略模式
  • 原文地址:https://www.cnblogs.com/over140/p/1857991.html
Copyright © 2011-2022 走看看