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

android   2012-01-10 08:29:33 发布
您的评价:
     
0.0
收藏     0收藏
文件夹
标签
(多个标签用逗号分隔)
android 简单列表对话框(AlertDialog.Builder().setItems())  
android 简单列表对话框(AlertDialog.Builder().setItems())

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

 

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();

    }

}

扩展阅读

Android 对话框(Dialog)大全 建立你自己的对话框
Android Dialog 学习汇总
Android 之简单文件管理器
Android Fragment 你应该知道的一切
Android 对话框 AlertDialog

为您推荐

Android 对话框 AlertDialog
自定义 Android 对话框 (AlertDialog) 的样式
Android 软件自动更新功能的实现
Android中用两层AlertDialog来进行弹出选择框信息选择
Android 弹出对话框Dialog

更多

android
Android开发
相关文档  — 更多
相关经验  — 更多
相关讨论  — 更多