android 的按钮回调函数,CompoundButton

CompoundButton

翻译署名:德罗德

译者博客:sparkrico.javaeye.com

版本:Android 2.2 r1

public

abstract class CompoundButtonextendsButtonimplementsCheckable

java.lang.Object

android.view.View

android.widget.TextView

android.widget.Button

android.widget.CompoundButton

间接子类

CheckBox,

RadioButton, ToggleButton

概述

一个带有选中/未选中状态的按钮。当按钮按下或点中时自动改变状态。

公共方法

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。并且此处不允许使用动画。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Android 中高级按钮控件有: 1. SwitchButton:带有开关功能的按钮。 2. CheckBox:带有复选框功能的按钮。 3. RadioButton:带有单选功能的按钮。 4. ToggleButton:带有切换功能的按钮。 5. FloatingActionButton:浮动操作按钮,常用于执行主要操作。 6. ImageButton:带有图片显示的按钮。 7. Button:普通按钮。 8. CompoundButton: 继承自Button,是CheckBox和RadioButton的父类。 ### 回答2: Android中提供了多种高级按钮控件,以下是其中一些常用的控件: 1. FloatingActionButton(浮动操作按钮):是一个圆形按钮,常用于主要的操作按钮,如新增、发布等。可以通过设置图标、背景颜色等进行个性化定制。 2. ToggleButton(切换按钮):提供了两个状态(开/关)的按钮,用户点击后可以切换状态。可以通过设置文字、图标、背景等进行样式的自定义。 3. Switch(开关按钮):类似于ToggleButton,提供了两个状态的切换按钮,用户可以通过滑动来切换开关状态。可以设置背景颜色、文字等进行个性化修改。 4. CheckBox(复选框):允许用户选择一个或多个选项的按钮控件。通常用于多选的场景,用户可以通过点击勾选或取消勾选。 5. RadioButton(单选按钮):与CheckBox类似,但是RadioButton只允许用户单选一个选项。常用于从多个互斥选项中选择一个。 6. ImageButton(图像按钮):是一个可以显示图像的按钮控件,用户可以通过点击图像进行相关操作。适合用于具有图标化操作的场景。 7. SwitchButton(滑动开关按钮):与Switch类似,但SwitchButton提供更多的自定义功能,用户可以通过滑动开关进行状态的切换。 这些高级按钮控件可以帮助开发者实现更加丰富、灵活的用户交互,提升应用的用户体验。开发者可以根据实际需求选择合适的按钮控件,并通过相关属性进行样式和行为的定制。 ### 回答3: 在Android中,有许多高级按钮控件可用于创建具有各种功能和样式的按钮。以下是几个常见的高级按钮控件: 1. ImageView按钮控件:ImageView按钮是一个高级按钮控件,可以显示图片,为按钮添加更具吸引力的外观和交互效果。可以使用setImageResource()方法设置按钮的图像。 2. ToggleButton控件:ToggleButton控件是一种具有两种状态(开/关)的高级按钮控件,可以使用ToggleButton组件将其呈现为具有两种不同状态的切换按钮。可以使用setChecked()方法设置按钮的状态。 3. FloatingActionButton控件:FloatingActionButton是一种圆形的高级按钮控件,通常位于界面的底部右下角,以引起用户的注意,常用于执行主要操作。可以使用setImageResource()方法设置按钮的图像。 4. CheckBox控件:CheckBox控件是一种高级按钮控件,允许用户选择多个选项,可用于支持多选功能,比如在设置界面中的选项。可以使用setChecked()方法设置按钮的状态。 5. RadioButton控件:RadioButton控件是一种高级按钮控件,类似于CheckBox,但是RadioButton只允许用户选择其中一个选项,通常用于支持单选功能,例如在调查问卷中的问题选项。可以使用setChecked()方法设置按钮的状态。 以上是一些常见的Android高级按钮控件,开发者可以根据需求选择适合自己应用程序的控件来创建更具吸引力和交互性的按钮

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值