安卓对话框之----创建带多选项列表的对话框
2013-06-25 17:00
381 查看
1、我们在布局文件中用一个按钮进行测试,给按钮注册事件,下面是布局文件的代码:
2、这是布局文件中引用的string.xml的值:
3、MainActivity中的代码:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <CheckBox android:id="@+id/checkBox1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginTop="18dp" android:text="@string/text_java" /> <CheckBox android:id="@+id/checkBox2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/checkBox1" android:layout_marginTop="36dp" android:text="@string/text_3G" /> <CheckBox android:id="@+id/checkBox3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/checkBox2" android:layout_below="@+id/checkBox2" android:layout_marginTop="43dp" android:text="@string/text_net" /> <CheckBox android:id="@+id/checkBox4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/checkBox3" android:layout_below="@+id/checkBox3" android:layout_marginTop="44dp" android:text="@string/text_PHP" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignRight="@+id/checkBox2" android:layout_below="@+id/checkBox4" android:layout_marginTop="58dp" android:onClick="getValues" android:text="@string/text_get" /> </RelativeLayout>
2、这是布局文件中引用的string.xml的值:
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">lession16-checkbox</string> <string name="action_settings">Settings</string> <string name="hello_world">Hello world!</string> <string name="text_java">Java专业</string> <string name="text_net">NET专业</string> <string name="text_PHP">PHP专业</string> <string name="text_3G">3G专业</string> <string name="text_get">获取值</string> </resources>
3、MainActivity中的代码:
package com.example.lession16_checkbox; import java.util.ArrayList; import java.util.List; import android.os.Bundle; import android.app.Activity; import android.app.AlertDialog; import android.view.Menu; import android.view.View; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.Toast; public class MainActivity extends Activity { //声明组件 private CheckBox cb1,cb2,cb3,cb4; //声明一个集合 private List<CheckBox> checkBoxs=new ArrayList<CheckBox>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取组件 cb1 = (CheckBox) findViewById(R.id.checkBox1); cb2 = (CheckBox) findViewById(R.id.checkBox2); cb3 = (CheckBox) findViewById(R.id.checkBox3); cb4 = (CheckBox) findViewById(R.id.checkBox4); //默认选项 cb2.setChecked(true); cb4.setChecked(true); //注册事件 cb1.setOnCheckedChangeListener(listener); cb2.setOnCheckedChangeListener(listener); cb3.setOnCheckedChangeListener(listener); cb4.setOnCheckedChangeListener(listener); //把四个组件添加到集合中去 checkBoxs.add(cb1); checkBoxs.add(cb2); checkBoxs.add(cb3); checkBoxs.add(cb4); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } public void getValues(View v) { String content = ""; for (CheckBox cbx : checkBoxs) { if (cbx.isChecked()) { content += cbx.getText() + "\n"; } } if ("".equals(content)) { content = "您还没有选择尼"; } new AlertDialog.Builder(this).setMessage(content).setTitle("选中的内容如下") .setPositiveButton("关闭", null).show(); } CompoundButton.OnCheckedChangeListener listener = new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { // TODO Auto-generated method stub CheckBox box = (CheckBox) buttonView; Toast.makeText(getApplicationContext(), "获取的值:" + isChecked + "xxxxx" + box.getText(), Toast.LENGTH_LONG).show(); } }; }
相关文章推荐
- Android-创建带单选项列表的对话框
- 安卓使用 AlertDialog.Builder创建单选列表对话框
- Android-创建带多选项列表的对话框
- 使用AlertDialog创建列表对话框
- 安卓开发:创建带子菜单的选项菜单
- RCP-定制-创建[首选项]对话框
- 安卓弹出使用Dialog创建的对话框之后触摸屏幕就消失了的解决方法
- 模仿combbox的创建下拉列表js支持动态选项
- Android之使用AlertDialog.Builder类创建带列表的对话框和带自己所布局视图的对话框
- 安卓使用Dialog创建普通对话框
- 用wx.SingleChoiceDialog创建选择列表对话框
- 我在达内学安卓-基于ArrayAdapter创建单一对象列表方式创建联系人列表!
- 长按listview弹出选项列表对话框
- 安卓通知的使用系列4:对话框通知的使用之列表对话框、单选列表对话框、多选列表对话框
- 使用 AlertDialog 创建列表对话框及自定义对话框
- 长按listview弹出选项列表对话框
- 安卓列表选项生成黑线的方法
- alertdialog(一)——使用alertdialog创建单选列表对话框
- AlertDialog创建6种对话框的用法 (对话框,单选对话框,多选对话框,列表对话框,自定义对话框,退出对话框)