22.列表对话框AlertDialog.Builder:省份选择列表
来源:互联网 发布:c语言pdf下载 编辑:程序博客网 时间:2024/06/02 21:06
目标效果
当前页面有一个提示信息和一个按钮,点击按钮后显示省份。当我们点击对应的省份后,关闭列表对话框并在页面显示一个选中省份toast信息5s。具体页面效果如下:
页面布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" 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" android:background="@drawable/dog4" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="19dp" android:layout_marginLeft="10dp" android:text="显示简单列表对话框" android:textAppearance="?android:attr/textAppearanceLarge" /> <Button android:id="@+id/show" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:layout_gravity="right" android:text="显示吧" /></LinearLayout>
事件响应
package com.example.alertdialogdemo;import android.os.Build;import android.os.Bundle;import android.os.Handler;import android.annotation.SuppressLint;import android.annotation.TargetApi;import android.app.Activity;import android.app.AlertDialog;import android.app.Dialog;import android.app.DialogFragment;import android.app.AlertDialog.Builder;import android.content.DialogInterface;import android.content.DialogInterface.OnClickListener;import android.view.Menu;import android.view.View;import android.widget.Button;import android.widget.EditText;@SuppressLint("NewApi")public class MainActivity extends Activity{ EditText write=null; Button show=null; final int COMMON_DIALOG=1; //创建用于显示列表的省份信息 private String[] province=new String[]{"湖南","河北","甘肃","北京","上海","黑龙江"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); show=(Button) findViewById(R.id.show); //为按钮设置监听器 show.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { showDialog(province); } //创建一个带有确定按钮的普通对话框 @SuppressLint ("NewApi") private void showDialog(String[] province) { MyDialogFragment myDialog=new MyDialogFragment(province); myDialog.show(getFragmentManager(), "警告"); } }); } @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; }/* * 普通对话框类 * 样式:带有一个普通按钮的对话框 */@SuppressLint({ "ValidFragment", "NewApi" }) class MyDialogFragment extends DialogFragment{ String[] province=null; public MyDialogFragment(String[] inputProvience) { province=inputProvience; } @SuppressLint("NewApi") @Override public Dialog onCreateDialog(Bundle savedInstanceState) { Dialog dialog=null; //创建列表对话框对象 Builder b=new Builder(getActivity()); b.setIcon(R.drawable.ic_launcher); b.setTitle("请选择省份"); b.setItems(province, new DialogInterface.OnClickListener() { /* * 点击列表项,显示内容,关闭对话框 * (non-Javadoc) * @see android.content.DialogInterface.OnClickListener#onClick(android.content.DialogInterface, int) */ @Override public void onClick(DialogInterface dialog, int choiceIndex) { final AlertDialog ad=new AlertDialog.Builder(MainActivity.this).setMessage( "您选择的是:"+(choiceIndex+1)+":"+province[choiceIndex]).show(); //线程处理 Handler handler=new Handler(); Runnable runnable=new Runnable() { @Override public void run() { // 调用AlertDialog类的dismiss()或者cancel()关闭对话框 ad.dismiss(); } }; //5秒后运行run方法 handler.postDelayed(runnable, 5*1000); } }); dialog=b.create(); return dialog; }}}
阅读全文
0 0
- 22.列表对话框AlertDialog.Builder:省份选择列表
- 省份 城市 选择列表
- 显示选择省份的三种列表对话框-列表对话框,单选列表对话框,多选列表对话框
- android 简单列表对话框(AlertDialog.Builder().setItems())
- android 简单列表对话框(AlertDialog.Builder().setItems())
- android 简单列表对话框(AlertDialog.Builder().setItems())
- 安卓使用 AlertDialog.Builder创建单选列表对话框
- AlertDialog的列表对话框
- Android AlertDialog 选择列表
- 使用AlertDialog创建列表对话框
- Android之使用AlertDialog.Builder类创建带列表的对话框和带自己所布局视图的对话框
- 使用AlertDialog创建单选列表对话框
- 使用AlertDialog创建单选列表对话框
- Android单选列表对话框builder.setSingleChoiceItems
- 弹出对话框AlertDialog.Builder
- 关闭AlertDialog.Builder对话框
- Android开发基础之AlertDialog的列表对话框的使用
- AlertDialog单选列表对话框焦点获取问题
- [笔记]PHP语法基础备忘
- M
- HDU 1570 AC
- bi数据仓库的架构与设计基础
- 关于ConcurrentModificationException异常原因及注意事项
- 22.列表对话框AlertDialog.Builder:省份选择列表
- 暨南大学课程评估自动化脚本
- DCT算法的原理和优化
- 多线程
- Android下pm 命令详解
- Servlet forward 和 sendRedirect 的区别
- 解决弹出层时底部body点击不滑动
- 版本管理工具介绍—Git篇
- 利用python程序抓爬网页,获取城市楼市价格(Python学习实例二)