CompoundButton
Android 中文 API (29) —— CompoundButton
前言
本章內容是android.widget.CompoundButton,翻譯來自德羅德,再次感謝德羅德 !期待你一起參與Android API 的中文翻譯,聯系我over140@gmail.com。
轉載
正文
一、結構
public abstract class CompoundButton extends Button implements Checkable
java.lang.Object
android.view.View
android.widget.TextView
android.widget.Button
android.widget.CompoundButton
二、概述
一個帶有選中/未選中狀態的按鈕。當按鈕按下或點中時自動改變狀態。
三、公共方法
public boolean dispatchPopulateAccessibilityEvent (AccessibilityEvent event)
在子視圖的構建時分派一個輔助事件。(譯者注:通過源碼可以看出,視圖構建時設置其選中狀態。)
參數
event 事件
返回值
如果事件全部完成返回True。
public boolean isChecked ()
(譯者注:是否選中)
public void onRestoreInstanceState (Parcelable state)
允許視圖重新應用以前通過onSaveInstanceState()生成代表內部的狀態。這個函數決不調用一個空的狀態。
參數
state 返回以前調用onSaveInstanceState()保存下來的狀態。
public Parcelable onSaveInstanceState ()
允許視圖生成一個代表內部的狀態,以后可用于創建一個與之相同的新的實例。這種狀態應該只包含非持久或以后不能夠重建的信息。例如,你決不存儲你當前在屏幕上的位置,因為這會在視圖的層面上重新計算放置一個新的實例。
你可以存儲到這里的一些例子:一個文本框中當前光標的位置(但通常不是文字本身,文字通常保存在內容提供者(content provider)或其他持久的儲存中),一個列表視圖中的當前選中項。
返回值
返回一個包含視圖當前狀態的Parcelable對象,或沒有什么狀態保存時返回null。默認實現返回null。
public boolean performClick ()
如果視圖定義了OnClickListener監聽器,調用此方法來執行。
返回值
定義了的OnClickListener被調用返回True,否則返回False
public void setButtonDrawable (Drawable d)
給按鈕背景設置一個可繪制對象(如:圖像)
參數
d 用作背景的可繪制對象(如:圖像)
public void setButtonDrawable (int resid)
通過資源Id給按鈕背景設置一個圖像
參數
resid 作為背景圖像的資源id
public void setChecked (boolean checked)
改變按鈕的選中狀態
參數
checked true選中,false非選中
public void setOnCheckedChangeListener (CompoundButton.OnCheckedChangeListener listener)
注冊一個在按鈕狀態發生改變時執行的回調函數
參數
listener 當選中狀態改變時調用的函數
public void toggle ()
改變選中狀態為當前狀態的逆狀態
四、受保護方法
protected void drawableStateChanged ()
在視圖狀態的變化影響到所顯示可繪制的狀態時調用這個方法。
確保在重載時中調用父類方法
protected int[] onCreateDrawableState (int extraSpace)
為當前視圖生成新的可繪圖區狀態。這個方式當緩存的圖像繪圖區狀態確定失效時通過視圖系統調用。你可以使用getDrawableState()方法重新取得當前的狀態。
參數
extraSpace 如果為非零,這是你應該返回的數組在你可以存放你的狀態的額外條目的數量。
返回值
返回一個記錄著視圖中當前繪圖區狀態的數組
protected void onDraw (Canvas canvas)
實現你自己的繪制。
參數
canvas 在畫布上繪制背景
protected boolean verifyDrawable (Drawable who)
如果你的視圖子類顯示他自己的可視化對象,他將要重寫此方法并且為了顯示可繪制返回true。此操作允許進行繪制時有動畫效果。
確認當重寫從方法時,需調用父類相應方法。
參數
who 需判斷的可繪制對象(Drawable)。如果是你要顯示的對象,返回True,否則返回調用父類的結果。
返回值
boolean 如果可繪制對象(Drawable)已經在視圖中顯示,返回True否則返回false。并且此處不允許使用動畫。posted on 2013-12-20 22:43 何云隆 閱讀(183) 評論(0) 編輯 收藏 所屬分類: Android