19讲 UI组件之_Buttoncheckboxradio

四、按钮Button

Button继承自TextView,间接继承自View。当用户对按钮进行操作的时候,触发相应事件,如点击,触摸。

、ImageButton

ImageButton继承自Button,可以在ImageButton中显示一个图片展示给用户看,并且对其Text属性设置值的时候是无效的,其它功能与Button一样。

<ImageButton

android:id="@+id/imageButton1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/ic_launcher" />

 

为ImageButton添加监听器注册事件

方式1:通过onClickListener

imgBtn01.setOnClickListener(newOnClickListener() {

public void onClick(View v) {   myTextView.setText("ImageButton的监听事件");  }

});

方式2:通过XML文件设置

<ImageButtonandroid:id="@+id/imgBtn02"        android:src="@drawable/back_48"

android:layout_width="wrap_content"     android:layout_height="wrap_content"

android:onClick="ImageButtonXml"/>

、ToggleButton
开关按钮

ToggleButton,一个开关按钮,有两个状态,可以通过两个属性显示不同状态时,控件内显示文字的内容不同,属性如下:

android:textOff/setTextOff(CharSequence):设置关闭时显示的文本内容。

android:textOn/setTextOn(CharSequence):设置打开时显示的文本内容。

android:textOn="男"

android:textOff="女"

android:onClick="test"

publicvoid test(View view){

ToggleButtonbutton = (ToggleButton)view;

Toast.makeText(this,button.getText(), 0).show();

}

、RadioButton(单选按钮)  RadioGroup(单选框)

RadioButton,为一个单选按钮,一般配合RadioGroup一起使用,在同一RadioGroup内,所有的RadioButton的选中状态为互斥,它们有且只有一个RadioButton被选中。

常用方法如下:

RadioGroup.check(intid);                            //将指定的RadioButton设置成选中状态。

(RadioButton)findViewById(radioGroup.getCheckedRadioButtonId());         //获取被选中的单选框。

RadioButton.getText();                                //获取单选框的值

获取点击RadioButton的信息

RadioGroup radioGroup = (RadioGroup)findViewById(R.id.radioGroup1);

radioGroup.setOnCheckedChangeListener(newOnCheckedChangeListener() {

public void onCheckedChanged(RadioGroup group, int checkedId) {

RadioButton button=(RadioButton) group.findViewById(checkedId);

Toast.makeText(getApplicationContext(), button.getText(),Toast.LENGTH_LONG).show();

//Toast.makeText(getApplicationContext(), (String)button.getTag(),1).show();

}

});

button类有两个重要属性:text和tag。前者是显示给用户看的,而后者tag是button的标签,是用户不可见的,作为编写程序时利用,用于数据存储与传输。

、CheckBox多选框

CheckBox是一个多选按钮,每个多选框都是独立的,所以也无需用一个组控件包裹起来。可以通过迭代所有多选框,然后根据其状态是否被选中再获取其值。

CheckBox 类常用方法:

CheckBox.setChecked(true);           //将CheckBox 设置成选中状态。

CheckBox.getText();                          //获取多选框的值

CheckBox.isChecked();                   //判断该选项是否被选中,如果选中返回true

CheckBox box1=(CheckBox)findViewById(R.id.checkBox1);

CheckBox box2=(CheckBox)findViewById(R.id.checkBox2);

CheckBox box3=(CheckBox)findViewById(R.id.checkBox3);

box1.setOnCheckedChangeListener(myListener);

box2.setOnCheckedChangeListener(myListener);

box3.setOnCheckedChangeListener(myListener);

private OnCheckedChangeListener  myListener = new OnCheckedChangeListener() {

public voidonCheckedChanged(CompoundButton arg0, boolean arg1) {

if(arg1) {

Toast.makeText(getApplicationContext(), arg0.getText()+"被选中了!",0).show();

}else {

Toast.makeText(getApplicationContext(), arg0.getText()+"被取消了!",0).show();

}

}

};

第19讲- UI组件之_Button、checkbox、radio的更多相关文章

  1. 第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter

    第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter 1.BaseAdapter BaseAdapter是Android应用程序中经常用到的基础数据适配器,它的 ...

  2. 第34讲 UI组件之 ProgressDialog和Message

    第34讲UI组件之 ProgressDialog和Message 1.进度对话框 ProgressDialog <1>简介 ProgressDialog是AlertDialog类的一个扩展 ...

  3. 第33讲 UI组件_进度条ProcessBar和消息队列处理器handler

    第33讲UI组件_进度条ProcessBar和消息队列处理器handler 1. 进度条ProcessBar 一个可视化的进度指示器,代表正在执行的耗时任务.可以为用户展示一个进度条,表示正在执行的任 ...

  4. 第32讲 UI组件之 时间日期控件DatePicker和TimePicker

    第32讲 UI组件之 时间日期控件DatePicker和TimePicker 在Android中,时间日期控件相对来说还是比较丰富的.其中, DatePicker用来实现日期输入设置,    Time ...

  5. 第31讲 UI组件之 Gallery画廊控件

    第31讲 UI组件之 Gallery画廊控件 1.Gallery的简介 Gallery(画廊)是一个锁定中心条目并且拥有水平滚动列表的视图,一般用来浏览图片,并且可以响应事件显示信息.Gallery只 ...

  6. 第30讲 UI组件之 GridView组件

    第30讲 UI组件之 GridView组件 1.网格布局组件GridView GridView是一个ViewGroup(布局控件),可使用表格的方式显示组件,可滚动的控件.一般用于显示多张图片,比如实 ...

  7. 第28讲 UI组件之 ListView和ArrayAdapter

    第28讲 UI组件之 ListView和ArrayAdapter 1. Adapter 适配器 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带.在常见的 ...

  8. 第27讲 UI组件之 ScrollView与底部动态添加数据

    第27讲 UI组件之 ScrollView与底部动态添加数据 1. ScrollView(滚动视图) ScrollView(滚动视图)是实现滚动的一个控件,只需要将需要滚动的控件添加到ScrollVi ...

  9. 第25讲 UI组件之 AlertDialog 的各种实现

    第25讲 UI组件之AlertDialog 的各种实现 对话框(Dialog)是程序运行中的弹出窗口,例如当用户要删除一个联系方式时,会弹出一个对话框. Android提供了多种对话框:警告对话框(A ...

随机推荐

  1. android后台截屏实现(3)--编译screencap

    修改好之后就要编译了,screencap的编译是要在源码环境中进行的. 将修改后的screencap.cpp文件替换源码中的原始文件,然后修改screencap的Android.mk文件,修改后的文件 ...

  2. 在jsp页面上直接打开PDF文件

    1.在不需要使用插件,直接打开通过链接方式打开 <%@ page language="java" import="java.util.*,java.io.*&quo ...

  3. 中国大推力矢量发动机WS15 跨入 世界先进水平!

    "太行"WS-15让俄闭嘴令美叹服 歼20试飞向世界证明,中国军工世界一流,并有望与美英法争夺新一代航空发动机桂冠.笔者请教解放军专家证实:中国四代机所配套的两台18吨推力的WS- ...

  4. Hadoop-2.2.0中文文档—— Common - CLI MiniCluster

    目的 使用 CLI MiniCluster, 用户能够简单地仅仅用一个命令就启动或关闭一个单一节点的Hadoop集群,不须要设置不论什么环境变量或管理配置文件. CLI MiniCluster 同一时 ...

  5. Qt使用AES加密算法对字符串进行加密

          因工作需要,需要对字符串进行加密处理,在网上找了很长时间,终于找到了一个可以使用的aes加密算法.其源代码采用c++编写而成,但其头文件引用windows.h,经过修改部分代码,将#inc ...

  6. 对return 语句的正确性和效率进行检查

    注意事项如下: 1. return 语句不可返回指向"堆栈内存“的”指针“或者”引用“,因为该内存单元在函数体结束时被自动释放. //错误 char* Func(void) { char s ...

  7. Webstorm10.0.3破解程序及汉化包下载、Webstorm配置入门指南

    核心提示: WebStorm 是jetbrains公司旗下一款JavaScript 开发工具.被广大中国JS开发者誉为“Web前端开发神器”.“最强大的HTML5编辑器”.“最智能的JavaSscri ...

  8. (二)一个工作任务引起的乱战——C++程序编译为dll,让C#调用

    C++程序编译为C#可调用的dll的过程: 1.新建一个Win32 Console Application 项目,项目名为:DLLDemo,下一步选择Application type为DLL; 2.在 ...

  9. HttpWebRequest多线程抓取17Track的物流信息

    公司的一个系统需要去抓17Track的物流信息,贴上代码有需要的朋友可以参考一下↓ //17Track的抓取地址以及开启的线程数量 <add key="url" value= ...

  10. Linux 定时执行shell脚本_crontab

    1.查看任务[oracle@XXXXX OracleBackA]$ crontab -l 2.新增任务[oracle@XXXXX OracleBackA]$ crontab -e 3.每天14点40执 ...