Most visited

Recently visited

Added in API level 1

CheckedTextView

public class CheckedTextView
extends TextView implements Checkable

java.lang.Object
   ↳ android.view.View
     ↳ android.widget.TextView
       ↳ android.widget.CheckedTextView
Known Direct Subclasses


一个扩展 TextView支持 Checkable接口和显示器。

这在 ListView中使用时非常有用,其中 setChoiceMode已被设置为 CHOICE_MODE_NONE以外的其他 CHOICE_MODE_NONE

Summary

XML attributes

android:checkMark Drawable used for the check mark graphic. 
android:checkMarkTint Tint to apply to the check mark. 
android:checkMarkTintMode Blending mode used to apply the check mark tint. 
android:checked Indicates the initial checked state of this text. 

Inherited XML attributes

From class android.widget.TextView
From class android.view.View

Inherited constants

From class android.view.View

Inherited fields

From class android.view.View

Public constructors

CheckedTextView(Context context)
CheckedTextView(Context context, AttributeSet attrs)
CheckedTextView(Context context, AttributeSet attrs, int defStyleAttr)
CheckedTextView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)

Public methods

void drawableHotspotChanged(float x, float y)

只要视图热点更改并需要将其传播到视图管理的可绘制视图或子视图,就会调用此函数。

CharSequence getAccessibilityClassName()

返回此对象的类名称以用于辅助功能。

Drawable getCheckMarkDrawable()

获取勾选drawable

ColorStateList getCheckMarkTintList()

如果指定,则返回应用于可绘制复选标记的色调。

PorterDuff.Mode getCheckMarkTintMode()

如果指定,返回用于将色调应用于可绘制复选标记的混合模式。

boolean isChecked()
void jumpDrawablesToCurrentState()

在与此视图关联的所有可绘制对象上调用 Drawable.jumpToCurrentState()

void onRestoreInstanceState(Parcelable state)

挂钩允许视图重新应用先前由 onSaveInstanceState()生成的内部状态的表示。

void onRtlPropertiesChanged(int layoutDirection)

当任何RTL属性(布局方向或文本方向或文本对齐)已被更改时调用。

Parcelable onSaveInstanceState()

钩子允许视图生成其内部状态的表示,稍后可用于创建具有相同状态的新实例。

void setCheckMarkDrawable(Drawable d)

将复选标记设置为指定的绘图。

void setCheckMarkDrawable(int resId)

使用指定的资源ID将复选标记设置为drawable。

void setCheckMarkTintList(ColorStateList tint)

对可绘制的复选标记应用色调。

void setCheckMarkTintMode(PorterDuff.Mode tintMode)

指定用于将 setCheckMarkTintList(ColorStateList)指定的色调应用于可绘制复选标记的混合模式。

void setChecked(boolean checked)

设置此视图的选中状态。

void setVisibility(int visibility)

设置此视图的启用状态。

void toggle()

将视图的选中状态更改为当前状态的反转状态

Protected methods

void drawableStateChanged()

只要视图的状态发生变化,就会调用此函数,使得它影响所显示的可绘制状态。

int[] onCreateDrawableState(int extraSpace)

为此视图生成新的 Drawable状态。

void onDraw(Canvas canvas)

实施这个来做你的绘画。

boolean verifyDrawable(Drawable who)

如果你的视图子类正在显示它自己的Drawable对象,它应该覆盖这个函数,并且对于它显示的任何Drawable返回true。

Inherited methods

From class android.widget.TextView
From class android.view.View
From class java.lang.Object
From interface android.view.ViewTreeObserver.OnPreDrawListener
From interface android.graphics.drawable.Drawable.Callback
From interface android.view.KeyEvent.Callback
From interface android.view.accessibility.AccessibilityEventSource
From interface android.widget.Checkable

XML attributes

android:checkMark

Drawable用于复选标记图形。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 checkMark

相关方法:

android:checkMarkTint

色调适用于复选标记。

必须是“ #rgb ”,“ #argb ”,“ #rrggbb ”或“ #aarrggbb ”形式的颜色值。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 checkMarkTint

相关方法:

android:checkMarkTintMode

混合模式用于应用复选标记色调。

必须是下列常数值之一。

Constant Value 描述
src_over 3 The tint is drawn on top of the drawable. [Sa + (1 - Sa)*Da, Rc = Sc + (1 - Sa)*Dc]
src_in 5 The tint is masked by the alpha channel of the drawable. The drawable’s color channels are thrown out. [Sa * Da, Sc * Da]
src_atop 9 The tint is drawn above the drawable, but with the drawable’s alpha channel masking the result. [Da, Sc * Da + (1 - Sa) * Dc]
multiply 14 Multiplies the color and alpha channels of the drawable with those of the tint. [Sa * Da, Sc * Dc]
screen 15 [Sa + Da - Sa * Da, Sc + Dc - Sc * Dc]
add 16 Combines the tint and drawable color and alpha channels, clamping the result to valid color values. Saturate(S + D)

这对应于全局属性资源符号 checkMarkTintMode

相关方法:

android:checked

指示此文本的初始选中状态。

必须是布尔值,“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 checked

Public constructors

CheckedTextView

Added in API level 1
CheckedTextView (Context context)

Parameters
context Context

CheckedTextView

Added in API level 1
CheckedTextView (Context context, 
                AttributeSet attrs)

Parameters
context Context
attrs AttributeSet

CheckedTextView

Added in API level 1
CheckedTextView (Context context, 
                AttributeSet attrs, 
                int defStyleAttr)

Parameters
context Context
attrs AttributeSet
defStyleAttr int

CheckedTextView

Added in API level 21
CheckedTextView (Context context, 
                AttributeSet attrs, 
                int defStyleAttr, 
                int defStyleRes)

Parameters
context Context
attrs AttributeSet
defStyleAttr int
defStyleRes int

Public methods

drawableHotspotChanged

Added in API level 21
void drawableHotspotChanged (float x, 
                float y)

只要视图热点更改并需要将其传播到视图管理的可绘制视图或子视图,就会调用此函数。

调度到子视图由 dispatchDrawableHotspotChanged(float, float)处理。

重写此功能时,一定要调用超类。

Parameters
x float: hotspot x coordinate
y float: hotspot y coordinate

getAccessibilityClassName

Added in API level 23
CharSequence getAccessibilityClassName ()

返回此对象的类名称以用于辅助功能。 如果子类正在实现的东西应该被视为一个全新的视图类,当它被可访问性使用时,子类只应该覆盖这个子类,与它所源自的类无关。 这用于填写AccessibilityNodeInfo.setClassName

Returns
CharSequence

getCheckMarkDrawable

Added in API level 16
Drawable getCheckMarkDrawable ()

获取勾选drawable

相关XML属性:

Returns
Drawable The drawable use to represent the checkmark, if any.

也可以看看:

getCheckMarkTintList

Added in API level 21
ColorStateList getCheckMarkTintList ()

如果指定,则返回应用于可绘制复选标记的色调。

相关XML属性:

Returns
ColorStateList the tint applied to the check mark drawable

也可以看看:

getCheckMarkTintMode

Added in API level 21
PorterDuff.Mode getCheckMarkTintMode ()

如果指定,返回用于将色调应用于可绘制复选标记的混合模式。

相关XML属性:

Returns
PorterDuff.Mode the blending mode used to apply the tint to the check mark drawable

也可以看看:

isChecked

Added in API level 1
boolean isChecked ()

Returns
boolean

jumpDrawablesToCurrentState

Added in API level 11
void jumpDrawablesToCurrentState ()

在与此视图关联的所有可绘制对象上调用 Drawable.jumpToCurrentState()

如果有一个StateListAnimator附加到这个视图,也调用 jumpToCurrentState()

onRestoreInstanceState

Added in API level 1
void onRestoreInstanceState (Parcelable state)

吊钩允许视图重新应用先前由onSaveInstanceState()生成的其内部状态的表示。 这个函数永远不会被调用为null状态。

Parameters
state Parcelable: The frozen state that had previously been returned by onSaveInstanceState().

onRtlPropertiesChanged

Added in API level 17
void onRtlPropertiesChanged (int layoutDirection)

当任何RTL属性(布局方向或文本方向或文本对齐)已被更改时调用。 子类需要重写此方法以处理依赖于已解析布局方向的缓存信息,或通知继承其布局方向的子视图。 默认实现什么都不做。

Parameters
layoutDirection int: the direction of the layout

onSaveInstanceState

Added in API level 1
Parcelable onSaveInstanceState ()

钩子允许视图生成其内部状态的表示,稍后可用于创建具有相同状态的新实例。 此状态应仅包含不持久或以后不能重建的信息。 例如,您永远不会将当前位置存储在屏幕上,因为当视图的新实例放置在其视图层次结构中时会再次计算该位置。

您可能在此处存储的某些示例:文本视图中的当前光标位置(但通常不是文本本身,因为它存储在内容提供程序或其他永久性存储中),即当前在列表视图中选择的项目。

Returns
Parcelable Returns a Parcelable object containing the view's current dynamic state, or null if there is nothing interesting to save. The default implementation returns null.

setCheckMarkDrawable

Added in API level 1
void setCheckMarkDrawable (Drawable d)

将复选标记设置为指定的绘图。

选中此视图后,绘图的状态集将包含 state_checked

相关XML属性:

Parameters
d Drawable: the drawable to use for the check mark

也可以看看:

setCheckMarkDrawable

Added in API level 1
void setCheckMarkDrawable (int resId)

使用指定的资源ID将复选标记设置为drawable。

选中此视图后,绘图的状态集将包含 state_checked

相关XML属性:

Parameters
resId int: the resource identifier of drawable to use as the check mark

也可以看看:

setCheckMarkTintList

Added in API level 21
void setCheckMarkTintList (ColorStateList tint)

对可绘制的复选标记应用色调。 不会修改当前着色模式,默认为SRC_IN

随后对 setCheckMarkDrawable(Drawable)调用将自动改变drawable,并使用 setTintList(ColorStateList)应用指定的色调和色调模式。

相关XML属性:

Parameters
tint ColorStateList: the tint to apply, may be null to clear tint

也可以看看:

setCheckMarkTintMode

Added in API level 21
void setCheckMarkTintMode (PorterDuff.Mode tintMode)

指定用于将setCheckMarkTintList(ColorStateList)指定的色调应用到可绘制复选标记的混合模式。 默认模式是SRC_IN

相关XML属性:

Parameters
tintMode PorterDuff.Mode: the blending mode used to apply the tint, may be null to clear tint

也可以看看:

setChecked

Added in API level 1
void setChecked (boolean checked)

设置此视图的选中状态。

Parameters
checked boolean: true set the state to checked, false to uncheck

setVisibility

Added in API level 1
void setVisibility (int visibility)

设置此视图的启用状态。

Parameters
visibility int: One of VISIBLE, INVISIBLE, or GONE.

toggle

Added in API level 1
void toggle ()

将视图的选中状态更改为当前状态的反转状态

Protected methods

drawableStateChanged

Added in API level 1
void drawableStateChanged ()

只要视图的状态发生变化,就会调用此函数,使得它影响所显示的可绘制状态。

如果View有一个StateListAnimator,它也将被调用来运行必要的状态改变动画。

重写此功能时,一定要调用超类。

onCreateDrawableState

Added in API level 1
int[] onCreateDrawableState (int extraSpace)

为此视图生成新的Drawable状态。 当缓存的Drawable状态被确定为无效时,这由视图系统调用。 要检索当前状态,您应该使用getDrawableState()

Parameters
extraSpace int: if non-zero, this is the number of extra entries you would like in the returned array in which you can place your own states.
Returns
int[] Returns an array holding the current Drawable state of the view.

onDraw

Added in API level 1
void onDraw (Canvas canvas)

实施这个来做你的绘画。

Parameters
canvas Canvas: the canvas on which the background will be drawn

verifyDrawable

Added in API level 1
boolean verifyDrawable (Drawable who)

如果你的视图子类正在显示它自己的Drawable对象,它应该覆盖这个函数,并且对于它显示的任何Drawable返回true。 这样可以安排这些可绘制的动画。

重写此功能时,一定要调用超类。

Parameters
who Drawable: The Drawable to verify. Return true if it is one you are displaying, else return the result of calling through to the super class.
Returns
boolean boolean If true than the Drawable is being displayed in the view; else false and it is not allowed to animate.

Hooray!