Android常用控件三之按钮、选择框
来源:互联网 发布:worktile类似软件 编辑:程序博客网 时间:2024/06/07 00:56
一、按钮控件
1、Button 按钮
android:text 设置按钮上的文字,ImageButton不能有文字
android:background 设置按钮的背景颜色
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="登录" android:background="@color/colorPrimaryDark" />
2、ImageButton 图片按钮
android:src 设置背景图片
android:adjustViewBounds 调整边框以适应图片大小
android:padding 设置图片的填充
<ImageButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/icon_user" android:adjustViewBounds="true" android:padding="20dp" />
3、事件处理
3.1、xml配置:
android:onclick="show"
在相对应的Activity中必须要有一个方法叫做show,而且该方法必须带一个View类的参数,代码如下:
public void show(View v){}
3.2、给按钮添加一个监听器,可以使用内部类,也可以使用外部类,代码如下:
btn.setOnClickListener(new View.OnClickListener(){public void onClick(View v){...}});
注意:如果同时使用,xml配置中的方式无效
二、选择框
1、RadioButton 单选框
RadioButton必须放到RadioGroup中,RadioGroup的android:orientation属性指定按钮的排列方向,必须指定id,android:checked是否选中
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <RadioGroup android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/rg_test_sex" > <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="男" android:id="@+id/rb_test_boy" /> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="女" android:id="@+id/rb_test_girl" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="获取值" android:onClick="getValue" android:id="@+id/bt_test_ok" /> </RadioGroup></LinearLayout>
package com.zking.laci.android05;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.Button;import android.widget.RadioButton;import android.widget.RadioGroup;import android.widget.Toast;/** * Created by Laci on 2017/6/5. */public class TestActivity extends AppCompatActivity{ //声明控件 private Button bt; private RadioGroup rg; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.test); //通过ID获得控件 bt= (Button) findViewById(R.id.bt_test_ok); rg= (RadioGroup) findViewById(R.id.rg_test_sex); //给Button控件设置监听 bt.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v) { //获取单选组中 被选中单选框的ID int rid=rg.getCheckedRadioButtonId(); //在根据被选中的单选框的ID获取该单选框 RadioButton rb= (RadioButton) findViewById(rid); String sex= rb.getText().toString(); //吐司弹框 Toast.makeText(TestActivity.this,""+sex,Toast.LENGTH_LONG).show(); } }); }}
2、复选框
代码如下:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.zking.laci.android05.MainActivity"> <CheckBox android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="吃饭" android:id="@+id/cb_main_c1" /> <CheckBox android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="睡觉" android:id="@+id/cb_main_c2" /> <CheckBox android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="打豆豆" android:id="@+id/cb_main_c3" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="获取值" android:id="@+id/bt_main_bt1" /></LinearLayout>
package com.zking.laci.android05;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.Gravity;import android.view.View;import android.widget.Button;import android.widget.CheckBox;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.TextView;import android.widget.Toast;import org.w3c.dom.Text;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity { //声明组件 private CheckBox cb1,cb2,cb3; private Button bt; //声明一个集合 private List<CheckBox> cbs = new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取组件 cb1= (CheckBox) findViewById(R.id.cb_main_c1); cb2= (CheckBox) findViewById(R.id.cb_main_c2); cb3= (CheckBox) findViewById(R.id.cb_main_c3); bt= (Button) findViewById(R.id.bt_main_bt1); //将所有的checkbox放到一个集合中 cbs.add(cb1); cbs.add(cb2); cbs.add(cb3); //给按钮设置点击事件 bt.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { StringBuffer sb=new StringBuffer(); //遍历集合中的CheckBox 判断是否选择 获取选中的文本 for (CheckBox checkBox:cbs){ if(checkBox.isChecked()){ sb.append(checkBox.getText().toString()+" "); } } if(sb!=null && "".equals(sb.toString())){ Toast t=Toast.makeText(MainActivity.this,"至少选一个",Toast.LENGTH_SHORT); t.setGravity(Gravity.CENTER,0,0); t.show(); }else{ //1.给吐司弹框设置背景图 //实例化一个layout LinearLayout li=new LinearLayout(MainActivity.this); ImageView i=new ImageView(MainActivity.this); //设置图片 i.setImageResource(R.drawable.icon_user); //将图片放入layout中 li.addView(i); //设置一个文本控件 TextView tv=new TextView(MainActivity.this); //将选中的值放入文本控件中 tv.setText(sb.toString()); //将文本控件放入layout中 li.addView(tv); //实例化一个吐司 Toast t=new Toast(MainActivity.this); //将布局放入吐司中 t.setView(li); //设置居中 t.setGravity(Gravity.CENTER,0,0); //展示 t.show(); //跳转 Intent in=new Intent(MainActivity.this,TimeActivity.class); //进行跳转 startActivity(in); } } }); }
阅读全文
0 0
- Android常用控件三之按钮、选择框
- Android常用控件2之按钮,选择框,日期/时间控件
- Android常用控件(按钮、选择框、日期时间控件)
- Android—常用控件(三)选择框
- android常用按钮之ImagetView(三)
- Android常用控件(按钮事件,Toast,单选复选,时间日期选择框)解析
- jQuery EasyUI详解-EasyUI常用控件之按钮/搜索框/密码框/文件框/数字框/日期时间选择框
- Android 控件之五:CheckBox 选择框
- Android常用控件之按钮选择器/九妹图,按钮点击事件+页面跳转+Toast,单选框.时间日期控件 /时间日期对话框
- Android开发编码规范之常用控件布局(三)
- GTK常用控件之按钮( GtkButton )
- GTK常用控件之按钮( GtkButton )
- Android—常用控件(二)按钮
- android常用控件三 AutoCompleteTextView
- Android 常用 控件(三)
- Android常用控件(三)
- Android 常用控件(三)
- Android开发之四(十三):常用控件之按钮(Button)
- HAWQ取代传统数仓实践(十四)——事实表技术之累积快照
- 数据加密相关
- 外媒:微信正在吃掉中国互联网,但这并不是一件好事
- 21. Merge Two Sorted Lists
- web service 工作原理
- Android常用控件三之按钮、选择框
- 使用HTML5的Server-sent技术,Go服务器向页面推送消息
- RestFul接口调试返回对应编码结果
- 树和二叉树基本概念以及二叉树遍历
- Spring 拦截器
- send mail by SMTP server (Python)
- windoows
- Ajax基本使用
- java多态