阅读更多 各种对话测试布局文件:

    


主程序代码测试:

/* * 对话框测试主入口 * @author Administrator * */public class DialogMainActivity extends Activity {private RadioGroup color,size;private RadioButton c1,c2,c3,c4,c5,s1,s2,s3,s4,s5;private TextView textView;private Button general,multic,radio,adapter,user;// 初始化public void init(){user = (Button) findViewById(R.id.user_dialog);general = (Button) findViewById(R.id.general_list_dialog);multic = (Button) findViewById(R.id.multic_list_dialog);radio = (Button) findViewById(R.id.radio_list_dialog);adapter = (Button) findViewById(R.id.adapter_list_dialog);}// 程序入口protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.dialog_main_layout);init(); // 初始化user.setOnClickListener(listener);general.setOnClickListener(listener);multic.setOnClickListener(listener);radio.setOnClickListener(listener);adapter.setOnClickListener(listener);}/** * 普通列表对话框测试 */public void generalListDialog(){Builder b = new Builder(this);b.setTitle("普通列表对话框测试");b.setIcon(R.drawable.ic_launcher);b.setItems(new String[]{"西方","南方","北方","西北方"},new OnClickListener() {public void onClick(DialogInterface dialog, int which) { // which 代表被点击的项Toast.makeText(DialogMainActivity.this, "选中了:"+new String[]{"西方","南方","北方","西北方"}[which],Toast.LENGTH_LONG).show();}});b.create();b.show();}/** * 单选对话框测试 */public void radioListDialog(){Builder b = new AlertDialog.Builder(this);b.setTitle("单选列表对话框测试");b.setIcon(R.drawable.ic_launcher);final String[] data = new String[]{"男","女","中"};/* * 参数: 数据  默认选项  事件 */b.setSingleChoiceItems(data, 0, new OnClickListener() {public void onClick(DialogInterface dialog, int which) {Toast.makeText(DialogMainActivity.this, "选中了:"+data[which],Toast.LENGTH_LONG).show();}});// 确定b.setPositiveButton("确定", new OnClickListener() {public void onClick(DialogInterface dialog, int which) {}});// 取消b.setNegativeButton("取消",new OnClickListener() {public void onClick(DialogInterface dialog, int which) {}});b.create();b.show();}/** * 创建多选列表对话框 */public void multicListDialog(){Builder b = new AlertDialog.Builder(this);b.setTitle("多选列表对话框测试");b.setIcon(R.drawable.ic_launcher);final String[] data = new String[]{"吃饭","冲浪","散步"};/* * 参数: 数据  默认选项  事件 */b.setMultiChoiceItems(data, null, new OnMultiChoiceClickListener() {public void onClick(DialogInterface dialog, int which, boolean isChecked) {/* which 索引  - isChecked 是否被选中 */if(isChecked){Toast.makeText(DialogMainActivity.this, "选中了:"+data[which],Toast.LENGTH_LONG).show();}}});// 确定b.setPositiveButton("确定", new OnClickListener() {public void onClick(DialogInterface dialog, int which) {}});// 取消b.setNegativeButton("取消",new OnClickListener() {public void onClick(DialogInterface dialog, int which) {}});b.create();b.show();}/** * 提供列表项的对话框测试 */public void adapterListDialog(){Builder b = new AlertDialog.Builder(this);b.setTitle("提供列表对话框测试");// 标题b.setIcon(R.drawable.ic_launcher); // 图标/* * 参数: 数据  默认选项  事件 */// 确定b.setPositiveButton("确定", new OnClickListener() {public void onClick(DialogInterface dialog, int which) {}});// 取消b.setNegativeButton("取消",new OnClickListener() {public void onClick(DialogInterface dialog, int which) {}});b.create();b.show();}// 事件 -- 测试各种动作private android.view.View.OnClickListener listener = new View.OnClickListener() {public void onClick(View v) {if(v.getId() == R.id.general_list_dialog){ // 普通测试generalListDialog();return;}if(v.getId() == R.id.user_dialog){ // 自定义测试userDialog();return;}if(v.getId() == R.id.radio_list_dialog){ // 单选测试radioListDialog();return;}if(v.getId() == R.id.multic_list_dialog){ // 多选测试multicListDialog();return;}if(v.getId() == R.id.adapter_list_dialog){ // 多选测试adapterListDialog();return;}}};/** * 自定义对话框测试 */public void userDialog(){// 创建对话框对象Builder builder = new Builder(this);builder.setTitle("字体样式选择"); // 设置标题builder.setIcon(R.drawable.ic_launcher); // 设置图标// 确定按钮  -- 执行预期动作builder.setPositiveButton("确定",new OnClickListener() {public void onClick(DialogInterface dialog, int which) {// TODO Auto-generated method stub}});/*  载入自定义布局文件 -- 达成自定义的效果  */LayoutInflater inflater = LayoutInflater.from(this); // 获取视图容器对象// 根据视图容器获取布局对象LinearLayout layout = (LinearLayout) inflater.inflate(R.layout.user_dialog_item,null); builder.setView(layout); // 将布局视图显示在对话框中// 获取自定义布局中的组件对象color = (RadioGroup) layout.findViewById(R.id.colorRadioGroup);size = (RadioGroup) layout.findViewById(R.id.sizeRadioGroup);c1 = (RadioButton) layout.findViewById(R.id.c1);c2 = (RadioButton) layout.findViewById(R.id.c2);c3 = (RadioButton) layout.findViewById(R.id.c3);c4 = (RadioButton) layout.findViewById(R.id.c4);s1 = (RadioButton) layout.findViewById(R.id.s1);s2 = (RadioButton) layout.findViewById(R.id.s2);s3 = (RadioButton) layout.findViewById(R.id.s3);s4 = (RadioButton) layout.findViewById(R.id.s4);// 设置监听器color.setOnCheckedChangeListener(radioListener);size.setOnCheckedChangeListener(radioListener);/* ------------------------------------------------------------------ */// 取消按钮,点击取消对话框builder.setNegativeButton("取消",new OnClickListener() {public void onClick(DialogInterface dialog, int which) {// TODO Auto-generated method stub}});builder.create(); //  创建builder.show(); // 显示}// RadioGroup 事件改变监听器private OnCheckedChangeListener radioListener = new OnCheckedChangeListener() {public void onCheckedChanged(RadioGroup group, int checkedId) {if(checkedId == c1.getId()){ // Toast.makeText(DialogMainActivity.this,"字体颜色", 1000).show();}if(checkedId == s1.getId()){Toast.makeText(DialogMainActivity.this,"字体大小", 1000).show();}}};}



=============================自定义对话框======================================


自定义对话框布局文件

                                                                                                                                                                    



主程序入口:
  • dialog.rar (1.2 MB)
  • 下载次数: 8

更多相关文章

  1. android支付宝问题2013-07-17
  2. Android:再按一次退出程序
  3. Android(安卓)adb shell 报错:more than one device and emulator
  4. Android中 View not attached to window manager错误的解决办法
  5. Android(安卓)Studio导入项目错误之Gradle版本过高
  6. 使用 Android(安卓)Studio 进行测试 (一) 单元测试
  7. Android——工具对话框

随机推荐

  1. Android实现拖拽GridView到目标View
  2. Android(安卓)AlertDialog工具类 实现对
  3. android studio 修改包名
  4. Attacking memory problems on Android
  5. Android(安卓)IjkPlayer 视频播放器
  6. How to enable Android(安卓)ConfigFS ga
  7. Android之调用js常见错误
  8. Android实时获得经纬度,发送给c++服务端
  9. android位置服务
  10. Android(安卓)图片的缓存机制分析