有的时候,可能需要弹出一个对话框,以便从用户的输入来获取某些确认信息。这种情况下,可以重写Activity基类中的受保护方法(protected)onCreateDialog()。
1.创建一个名为Dialog的工程。
2.main.xml中的代码。
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="vertical" >
-
- <Button
- android:id="@+id/btn_dialog"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="Click to display a dialog"
- android:onClick="onClick" />
-
- </LinearLayout>
3.DialogActivity.java中的代码。
- package net.horsttnann.Dialog;
-
- import android.app.Activity;
- import android.app.AlertDialog;
- import android.app.Dialog;
- import android.content.DialogInterface;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Toast;
-
- public class DialogActivity extends Activity {
- CharSequence[] items = { "Google", "Apple", "Microsoft" };
- boolean[] itemsChecked = new boolean[items.length];
-
-
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- }
-
- public void onClick(View v) {
- showDialog(0);
- }
-
- @Override
- protected Dialog onCreateDialog(int id) {
- switch (id) {
- case 0:
- return new AlertDialog.Builder(this)
- .setIcon(R.drawable.ic_launcher)
- .setTitle("This is a dialog with some simple text...")
- .setPositiveButton("OK",
- new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog,
- int whichButton) {
- Toast.makeText(getBaseContext(),
- "OK clicked!", Toast.LENGTH_SHORT)
- .show();
- }
- })
- .setNegativeButton("Cancel",
- new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog,
- int whichButton) {
- Toast.makeText(getBaseContext(),
- "Cancel clicked!",
- Toast.LENGTH_SHORT).show();
- }
- })
- .setMultiChoiceItems(items, itemsChecked,
- new DialogInterface.OnMultiChoiceClickListener() {
- public void onClick(DialogInterface dialog,
- int which, boolean isChecked) {
- Toast.makeText(
- getBaseContext(),
- items[which]
- + (isChecked ? " checked!"
- : " unchecked!"),
- Toast.LENGTH_SHORT).show();
-
- }
- }).create();
- }
- return null;
- }
- }
4.调试。
点击按钮弹出对话框,在CheckBox上面打勾,就会弹出一个Toast提示,显示选中物件的文本信息。点击“OK”或“Cancel”按钮会使对话框消失。
效果图:
更多信息请查看 java进阶网 http://www.javady.com
分享到:
相关推荐
android dialog ——ProgressDialog 进度条对话框详解
半导体设备系列专题报告之一:半导体设备详解——产业转移与国家力量赋能国产化加速推进.pdf
Android底层开发技术实战详解——内核、移植和驱动
深入理解Android(一):Gradle详解
资产管理三期系列详解之——数据治理篇.docx资产管理三期系列详解之——数据治理篇.docx资产管理三期系列详解之——数据治理篇.docx资产管理三期系列详解之——数据治理篇.docx资产管理三期系列详解之——数据治理篇...
Android系统原理与开发要点详解_培训课件下载。 Android系统原理与开发要点详解_培训课件下载。 Android系统原理与开发要点详解_培训课件下载。 Android系统原理与开发要点详解_培训课件下载。 Android系统原理与...
Android WebView详解和调用JS,androidrom开发书籍(csdn)————程序
资源名称:Android游戏开发技术实战详解 内容简介:《Android游戏开发技术实战详解》详细讲解了Android游戏开发技术的基本知识。《Android游戏开发技术实战详解》内容新颖、知识全面、讲解详细,《Android游戏开发...
《android网络开发与应用实战详解》一书源代码
ARM Cortex-M3嵌入式开发实例详解——基于NXP LPC17XX[张燕妮][程序源代码]
PHP漏洞挖掘(七):PHP框架开发详解——课程资源百度网盘下载,亲测真实有效可用!包含视频+课程资料.zip,在知识星球中也分享了该资源,知识星球:W小哥
详细介绍了android开发中的listview控件的使用
1、在开发中有时会用到全局弹出对话框但必须在manifest中申请权限: <uses android:name=android.permission.SYSTEM_ALERT_WINDOW> 2、创建Dialog AlertDialog.Builder builder=new AlertDialog.Builder(this); ...
android底层开发技术实战详解内核移植和驱动-Linux原理,传感器,
《Android驱动开发与移植实战详解》.pdf 带书签 书签自己做的
资源名称:Android热门应用开发详解内容简介:以热门应用为主线,引入了当前热门的综合应用实例(微博、视频点播、二维码、游戏、电话、相册、GTalk、上网),涵盖了几乎所有Android应用开发的知识。全书共分5篇:...
————————————————————————— 详解如何正确配置PHP开发环境 2009-12-03 14:24 来源:eNet论坛 【简 介】 配置PHP开发环境首先需要在PHP的官方网站上下载最新的版本,然后需要按照文章中提到...