Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android 中文 API (17) —— TextSwitcher

Android 中文 API (17) —— TextSwitcher

編輯:Android開發實例

版本

  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)

         使用提供的context和attributes來創建一個空的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>

轉自:http://www.cnblogs.com/over140/archive/2010/10/22/1857991.html

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved