Android实现对话框可以使用AlertDialog.Builder类,还可以自定义对话框。如果对话框有button.需要对其设置监听事件OnClickListener.
AlertDialog创建对话框有以下几个常用方法:
setTitle();//给对话框设置title;
setIcon();//给对话框设置图标;
setMessage();//设置对话框的提示信息;
setItems();//设置对话框要显示的一个List,一般用于显示几个命令时。
setSingleChoiceItems();//设置对话框显示一个单选的List
setMultiChoiceItems();//设置对话框显示一系统的复选框;
setPositiveButton();//给对话框添加"Yes"按钮;
setNegativeButton();//给对话框添加"No"按钮。
效果图:
代码:
1.res/values/string.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">这里演示的是登录对话框,详细可登录http://www.80080088.com了解!</string>
<string name="app_name">登录对话框</string>
<string name="accountid">帐号:</string>
<string name="password">密码:</string>
<string name="login_title">登录提示</string>
<string name="here_must_login">这里需要登录!</string>
<string name="ok">确定</string>
<string name="no">取消</string>
<string name="exit">退出</string>
<string name="login_tile">登录框</string>
<string name="pls_waiting">请等侯...</string>
<string name="logining">正在为你登录...</string>
</resources>
2.res/layout/main.xml和login_dialog.xml
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
login_dialog.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<TextView
android:id="@+id/username"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:text="@string/accountid"
android:gravity="left"
android:textAppearance="?android:attr/textAppearanceMedium">
</TextView>
<EditText
android:id="@+id/username"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:autoText="false"
android:capitalize="none"
android:gravity="fill_horizontal"
android:textAppearance="?android:attr/textAppearanceMedium">
</EditText>
<TextView
android:id="@+id/username"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:text="@string/password"
android:gravity="left"
android:textAppearance="?android:attr/textAppearanceMedium">
</TextView>
<EditText
android:id="@+id/password"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:autoText="false"
android:capitalize="none"
android:gravity="fill_horizontal"
android:password="true"
android:textAppearance="?android:attr/textAppearanceMedium">
</EditText>
</LinearLayout>
3.Activity类
package com.cottsoft.android;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
public class A012Activity extends Activity {
private ProgressDialog m_Dialog;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Dialog dialog = new AlertDialog.Builder(A012Activity.this)
.setTitle(getResources().getString(R.string.login_title))
.setMessage(getResources().getString(R.string.here_must_login))
.setPositiveButton(getResources().getString(R.string.ok),new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
LayoutInflater factory = LayoutInflater.from(A012Activity.this);
final View DialogView = factory.inflate(R.layout.login_dialog, null);
AlertDialog dlg = new AlertDialog.Builder(A012Activity.this)
.setTitle(getResources().getString(R.string.login_title))
.setView(DialogView)
.setPositiveButton(getResources().getString(R.string.ok), new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
m_Dialog = ProgressDialog.show(A012Activity.this, getResources().getString(R.string.pls_waiting), getResources().getString(R.string.logining),true);
new Thread(){
public void run(){
try{}catch(Exception ex){
ex.printStackTrace();
}finally{
m_Dialog.dismiss();
}
}
}.start();
}
})
.setNegativeButton(getResources().getString(R.string.no), new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
A012Activity.this.finish();
}
})
.create();
dlg.show();
}
}).setNeutralButton(getResources().getString(R.string.exit), new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
A012Activity.this.finish();
}
}).create();
dialog.show();
}
}
- 大小: 73.9 KB
- 大小: 80.2 KB
分享到:
相关推荐
在Android应用开发中,进度条对话框(ProgressDialog)是一种常见的用户界面组件,它允许开发者向用户展示一个等待或加载过程,提升用户体验。本项目“Android应用源码之进度条对话框Demo”是针对IT计算机专业学生的...
通过深入研究"Android应用源码之进度条对话框Dem.zip",开发者不仅可以学会如何在实际项目中使用ProgressDialog,还能提升对Android应用程序开发的整体理解,特别是在处理UI更新和异步任务方面。同时,源码分析也是...
在Android应用开发中,对话框(Dialog)是一种重要的用户界面组件,它用于向用户显示临时信息或进行交互操作。在给定的“Android应用源码所有Dialog对话框.zip”压缩包中,包含了多种类型的Dialog实现,是学习和理解...
《高等学校计算机科学与技术项目驱动案例实践规划教材:Android应用开发案例教程》应用“项目驱动(Project-Driven)”最新教学模式,通过完整的项目案例系统地介绍了使用Android技术设计与开发应用系统的理论和方法...
本压缩包中的资源提供了关于如何在Android应用中实现自定义对话框的源码示例。 首先,"JavaApk源码说明.txt"可能包含对整个源码结构和使用方法的简要介绍。这份文档通常会解释各个类的作用,以及如何编译和运行项目...
这个"Android应用源码之进度条对话框Demo源码.zip"压缩包提供了一个示例,展示了如何在Android应用中集成和使用进度条对话框。 首先,我们来理解进度条对话框的基本概念。ProgressDialog是Android SDK提供的一个...
在Android应用开发中,进度条对话框(ProgressDialog)是一种常见的用户界面组件,它允许开发者向用户展示一个等待或加载过程,提升用户体验。本项目“Android应用源码之进度条对话框Demo源码”是一个适用于毕业设计...
这个"Android应用源码之进度条对话框Demo源码.rar"压缩包提供了一个实例,帮助开发者理解如何在自己的应用程序中实现这种功能。下面将详细解释该Demo中的关键知识点。 1. **ProgressDialog的使用**: ...
在Android开发中,`DialogFragment`是一个非常实用的组件,它允许我们在应用程序中展示各种对话框,如警告、确认或信息提示。`DialogFragment`继承自`Fragment`,因此它具有与Fragment相同的生命週期,并且可以更好...
《Android应用开发完全自学手册》是一本全面介绍Android应用开发的指南,涵盖了从基础到进阶的各个环节。这本书旨在帮助初学者系统地学习并掌握Android应用的开发技能,通过源代码解析来提升实践能力。 第1章:...
6. **DialogFragment**:对话框在Android应用中广泛应用,DialogFragment是Android官方推荐的方式,它继承自Fragment,可以方便地管理和控制对话框的显示与消失。 7. **动画(Animation)**:Android支持属性动画...
这个"android手机应用源码进度条对话框Demo"是一个示例项目,它展示了如何在Android应用程序中实现和使用进度条对话框。以下是对这个Demo的详细解析: 1. **ProgressDialog的使用**: - ProgressDialog是Android ...
在Android开发中,对话框(Dialog)是一种常见的用户交互组件,用于向用户显示临时信息或者进行简单的交互操作。本文将深入探讨如何管理和使用Android对话框,主要包括其基本概念、创建方式、自定义以及最佳实践。 ...
《Android应用开发案例教程(高等学校计算机科学与技术项目驱动案例实践规划教材)》编著者毋建军、徐振东、林瀚。, 《Android应用开发案例教程(高等学校计算机科学与技术项目驱动案例实践规划教材)》应用“项目驱动...
本资源"安卓Android源码——android 自定义对话框.zip"包含了实现自定义对话框的源代码,这对于理解和实践Android应用的界面定制具有重要意义。 首先,我们要理解Android系统提供的默认对话框类`AlertDialog`和`...
总的来说,自定义对话框在Android应用开发中扮演着重要的角色,它允许开发者以独特的方式呈现信息和获取用户输入。通过深入理解并实践“Android例子源码自定义对话框”,开发者可以更好地理解和掌握Android UI设计的...