ToggleButton
在本部分中,你将使用 ToggleButton
小组件创建专门用于在两种状态之间切换的按钮。 如果有两个相互排斥的简单状态(例如“开”和“关”),该小组件是单选按钮的极佳替代方式。 Android 4.0(API 级别 14)引入了一种名为 Switch
的切换按钮替代方式。
左侧的一对图像是 ToggleButton 的示例,右侧的一对图像是 Switch 的示例:
应用程序使用哪种控件是样式问题。 这两个小组件在功能上是等效的。
打开 Resources/layout/Main.axml 文件并添加 ToggleButton
元素(在 LinearLayout
内):
要在状态发生变化时执行某些操作,请将以下代码添加到 OnCreate()
方法的末尾:
ToggleButton togglebutton = FindViewById<ToggleButton>(Resource.Id.togglebutton);
togglebutton.Click += (o, e) => {
// Perform action on clicks
if (togglebutton.Checked)
Toast.MakeText(this, "Checked", ToastLength.Short).Show ();
else
Toast.MakeText(this, "Not checked", ToastLength.Short).Show ();
};
这将从布局中捕获 ToggleButton
元素,并处理 Click 事件,该事件定义了单击按钮时要执行的操作。 在此示例中,该方法会检查按钮的新状态,然后显示一条 Toast
消息,表明当前状态。
请注意,ToggleButton
自行处理选中与未选中状态之间的变化,所以你只需查询其当前状态。
运行该应用程序。
提示
如果需要自行更改状态(例如加载已保存的 CheckBoxPreference
),请使用 Checked
属性资源库或 Toggle()
方法。