标签:
CheckUI界面:
========================================================================================
代码实现:MainActivity.java
1 package com.example.a08_checkui; 2 3 import android.os.Bundle; 4 import android.app.Activity; 5 import android.view.Menu; 6 import android.view.View; 7 import android.view.View.OnClickListener; 8 import android.widget.CheckBox; 9 import android.widget.CompoundButton; 10 import android.widget.RadioButton; 11 import android.widget.RadioGroup; 12 import android.widget.Toast; 13 import android.widget.CompoundButton.OnCheckedChangeListener; 14 import android.widget.TextView; 15 import android.widget.ToggleButton; 16 17 public class MainActivity extends Activity implements 18 android.widget.RadioGroup.OnCheckedChangeListener {// MainActivity实现的接口时RadioGroup监听事件 19 private CheckBox cb1, cb2, cb3;// 声明全局 20 private TextView tv; 21 private String string; 22 private RadioGroup rg; // 我们想使用的radiobutton,所以我们用RadioGroup去监听。 23 private TextView tv_rb_nan; 24 private ToggleButton tb;//这个只有两种状态 开或者是关 25 26 @Override 27 protected void onCreate(Bundle savedInstanceState) { 28 super.onCreate(savedInstanceState); 29 setContentView(R.layout.activity_main); 30 findbyid(); 31 Init(); 32 tv.setText("您选择的爱好是:"); 33 cb1.setOnCheckedChangeListener(new OnCheckedChangeListener() {// 设置点击事件 34 35 @Override 36 public void onCheckedChanged(CompoundButton buttonView, 37 boolean isChecked) { 38 // 参数一 指的是哪一个控件, 参数2 为选中状态 39 if (isChecked) { 40 // cb1.getText() 获取的值时吃饭 41 tv.append(cb1.getText());// 在"您选择的爱好是:" 字符串的基础上追加 吃饭字符串 42 43 } else { 44 CharSequence text = tv.getText();// 获得我们文本的信息:您选择的爱好是:吃饭 45 string = text.toString();// string = 您选择的爱好是吃饭睡觉 46 // 这里时将CharSequence 转化为string 47 String replace = string.replace(cb1.getText(), "");// 进行讲string字符串里面的吃饭 48 // 替换为空 49 // String substring = string.substring(0, string.length() - 50 // 2); 51 tv.setText(replace);// 重设之后我们就获取了没有”吃饭“的字符串 52 53 Toast.makeText(getApplicationContext(), 54 "您取消了爱好:" + cb1.getText(), 1).show(); 55 56 } 57 58 } 59 }); 60 cb2.setOnCheckedChangeListener(new OnCheckedChangeListener() { 61 62 @Override 63 public void onCheckedChanged(CompoundButton buttonView, 64 boolean isChecked) { 65 if (isChecked) { 66 tv.append(cb2.getText()); 67 68 } else { 69 CharSequence text = tv.getText(); 70 string = text.toString(); 71 String replace = string.replace(cb2.getText(), ""); 72 String substring = string.substring(0, string.length() - 2); 73 tv.setText(replace); 74 75 Toast.makeText(getApplicationContext(), 76 "您取消了爱好:" + cb2.getText(), 1).show(); 77 } 78 79 } 80 }); 81 cb3.setOnCheckedChangeListener(new OnCheckedChangeListener() { 82 83 @Override 84 public void onCheckedChanged(CompoundButton buttonView, 85 boolean isChecked) { 86 if (isChecked) { 87 tv.append(cb3.getText()); 88 89 } else { 90 CharSequence text = tv.getText(); 91 string = text.toString(); 92 String replace = string.replace(cb3.getText(), ""); 93 String substring = string.substring(0, string.length() - 2); 94 tv.setText(replace); 95 Toast.makeText(getApplicationContext(), 96 "您取消了爱好:" + cb3.getText(), 1).show(); 97 } 98 99 } 100 }); 101 tb.setOnClickListener(new OnClickListener() {//这是我们的togglebutton的点击事件 102 103 @Override 104 public void onClick(View v) { 105 Toast.makeText(getApplicationContext(), "" + tb.getText(), 1) 106 .show(); 107 //当我们点击的时候,如果是开,我们的打印信息就是开 108 109 } 110 }); 111 112 } 113 114 private void Init() {// 这是初始化的工作 115 cb1.setChecked(false); 116 cb2.setChecked(false); 117 cb3.setChecked(false); 118 119 } 120 121 private void findbyid() {// 寻找控件 122 cb1 = (CheckBox) findViewById(R.id.cb1); 123 cb2 = (CheckBox) findViewById(R.id.cb2); 124 cb3 = (CheckBox) findViewById(R.id.cb3); 125 tv = (TextView) findViewById(R.id.textView1); 126 rg = (RadioGroup) findViewById(R.id.rg);// 找寻控件 127 rg.setOnCheckedChangeListener(this); 128 // 绑定我们RadioGroup的监听事件为MainActivity自身实现的方法onCheckedChanged 129 tb = (ToggleButton) findViewById(R.id.tb); 130 131 } 132 133 @Override 134 public void onCheckedChanged(RadioGroup group, int checkedId) { 135 // 参数1 RadioGroup 参数2 我们RadioGroup里面radiobuuton的ID 136 // 例:如果我们选中了男:checkedId=R.id.rb_nan 137 switch (checkedId) {// 用switch语句来做男女判断,通过ID的形式 138 // 用这个方法来监听radiogroup以及radiobutton 139 case R.id.rb_nan: 140 141 tv_rb_nan.setText("您是一位:先生"); 142 143 break; 144 case R.id.rb_nv: 145 146 tv_rb_nan.setText("您是一位:女士"); 147 break; 148 } 149 } 150 }
=============================================================================================
activity_main.xml
1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 android:orientation="vertical" 6 tools:context=".MainActivity" > 7 8 <TextView 9 android:id="@+id/textView1" 10 android:layout_width="wrap_content" 11 android:layout_height="wrap_content" 12 android:text="请选择你的爱好:" /> 13 14 <CheckBox 15 android:id="@+id/cb1" 16 android:layout_width="wrap_content" 17 android:layout_height="wrap_content" 18 android:checked="true" 19 android:text="吃饭" /> 20 21 <CheckBox 22 android:id="@+id/cb2" 23 android:layout_width="wrap_content" 24 android:layout_height="wrap_content" 25 android:checked="true" 26 android:text="睡觉" /> 27 28 <CheckBox 29 android:id="@+id/cb3" 30 android:layout_width="wrap_content" 31 android:layout_height="wrap_content" 32 android:checked="true" 33 android:text="打球" /> 34 35 <RadioGroup 36 android:id="@+id/rg" 37 android:layout_width="wrap_content" 38 android:layout_height="wrap_content" 39 android:layout_marginTop="20dp" 40 android:orientation="horizontal" > 41 42 <RadioButton 43 android:id="@+id/rb_nan" 44 android:layout_width="wrap_content" 45 android:layout_height="wrap_content" 46 android:text="男" /> 47 48 <RadioButton 49 android:id="@+id/rb_nv" 50 android:layout_width="wrap_content" 51 android:layout_height="wrap_content" 52 android:text="女" /> 53 </RadioGroup> 54 55 <TextView 56 android:id="@+id/tv_rb_nan" 57 android:layout_width="wrap_content" 58 android:layout_height="wrap_content" 59 android:text="您是一位:先生" /> 60 61 <ToggleButton 62 android:id="@+id/tb" 63 android:layout_width="wrap_content" 64 android:layout_height="wrap_content" 65 android:layout_marginTop="40dp" 66 android:checked="true" 67 android:textOff="关闭" 68 android:textOn="开启" /> 69 70 </LinearLayout>
标签:
原文地址:http://www.cnblogs.com/Je-Cortex/p/4830934.html