您的位置:首页 > 产品设计 > UI/UE

android 简单列表对话框(AlertDialog.Builder().setItems())

2011-07-21 16:26 471 查看








package com.js.listdialogtest1; import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInterface;import android.os.Bundle;import android.os.Handler;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button; public class ListDialogTest1 extends Activity implements OnClickListener{ private Button btnListDialog; private String[] provinces = new String[] { "上海", "北京", "湖南", "湖北", "海南" }; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btnListDialog = (Button) findViewById(R.id.btnListDialog); btnListDialog.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btnListDialog: showListDialog(); break; } } private void showListDialog() { AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("请选择省份"); /** * 1、public Builder setItems(int itemsId, final OnClickListener * listener) itemsId表示字符串数组的资源ID,该资源指定的数组会显示在列表中。 2、public Builder * setItems(CharSequence[] items, final OnClickListener listener) * items表示用于显示在列表中的字符串数组 */ builder.setItems(provinces, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { /* * ad变量用final关键字定义,因为在隐式实现的Runnable接口 的run()方法中 需要访问final变量。 */ final AlertDialog ad = new AlertDialog.Builder( ListDialogTest1.this).setMessage( "你选择的是:" + which + ": " + provinces[which]).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); } }); builder.create().show(); }}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: