天天看點

Android中文API(124) —— DialerFilterA

結構

繼承關系

public static interface View.OnClickListne 

android.view.View.OnClickListene

子類及間接子類

間接子類

CharacterPickerDialog, KeyboardView, QuickContactBadge            

類概述

  

  (譯者注:撥号器過濾,暫時不清楚使用方法和場景。        

常量

public static final int DIGITS_AND_LETTERS

該模式包含兩行。

常量值: 1 (0x00000001) 

public static final int DIGITS_AND_LETTERS_NO_DIGITS

DIGITS_AND_LETTERS 模式開始後,過濾器移除了所有比對的數字, 隻剩字母行時的模式。

常量值: 2 (0x00000002) 

public static final int DIGITS_AND_LETTERS_NO_LETTERS

DIGITS_AND_LETTERS 模式開始後,過濾器移除了所有比對的字母, 隻剩數字行時的模式。

常量值: 3 (0x00000003) 

public static final int DIGITS_ONLY

該模式隻有數字行。

常量值: 4 (0x00000004) 

public static final int LETTERS_ONLY

該模式隻有字母行。

常量值: 5 (0x00000005)       

公共方法

public void append (String text) 

public void clearText ()

清除數值和過濾器文本。 

public CharSequence getDigits () 

public CharSequence getFilterText ()

public CharSequence getLetters ()

public int getMode ()

public boolean isQwertyKeyboard ()

public boolean onKeyDown (int keyCode, KeyEvent event)

KeyEvent.Callback.onKeyMultiple() 的預設實作. 如果視圖可用并可按, 當按下 KEYCODE_DPAD_CENTER 或 KEYCODE_ENTER 時執行視圖的按下事件.

參數

keyCode           表示按下的鍵的、在 KEYCODE_ENTER 中定義的鍵盤代碼.

event       KeyEvent 對象,定義了按鈕動作.

傳回值

    如果處理了事件,傳回真.如果允許下一個事件接受器處理該事件,可以傳回假.

public boolean onKeyUp (int keyCode, KeyEvent event)

KeyEvent.Callback.onKeyMultiple() 的預設實作. 當釋放 KEYCODE_DPAD_CENTER 或 KEYCODE_ENTER 時執行視圖的單擊事件.

public void removeFilterWatcher (TextWatcher watcher)

public void setDigitsWatcher (TextWatcher watcher)

public void setFilterWatcher (TextWatcher watcher)

public void setLettersWatcher (TextWatcher watcher)

public void setMode (int newMode)

改變小部件的模式。

newMode        變更的目标模式。

受保護方法

protected void onFinishInflate ()

根據 XML 生成視圖工作完成.該函數在生成視圖的最後調用,在所有子視圖添加完之後。

即使子類覆寫了 onFinishInflate 方法,也應該調用父類的方法,使該方法得以執行。

protected void onFocusChanged (boolean focused, int direction, Rect previouslyFocusedRect)

如果有圖示,隻是在得到焦點時顯示圖示視圖。

focused  如果視圖具有焦點,值為真;否則為假.

direction          當調用 requestFocus() 為該視圖設定焦點時,該值為焦點移動的方向. 其值為 FOCUS_UP、FOCUS_DOWN、 FOCUS_LEFT 或者FOCUS_RIGHT. 當使用無參數的 requestFocus() 時,可能無值.

previouslyFocusedRect 失去焦點的視圖的矩形坐标,使用該視圖的坐标系統.如果指定了, 它将傳入可以知道焦點來自哪裡的詳細資訊(作為對 direction 的補充). 否則,其值為 null。 

protected void onModeChange (int oldMode, int newMode)

在模式變更後調用,為子類提供可以用于重新更改風格的等附加操作的機會。

補充

         示例代碼

<?xml version="1.0" encoding="utf-8"?>

<DialerFilter android:id="@+id/dialer_filter"

    xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent">

    <EditText android:id="@android:id/hint"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:background="@android:drawable/editbox_background"/>

    <EditText android:id="@android:id/primary"

        android:layout_below="@android:id/hint"/>

</DialerFilter>

         測試代碼

繼續閱讀