Android开发入门(一)详解活动 1.5 显示进度对话框

当要进行耗时的操作的时候,往往会看见“请稍候”字样的对话框。例如,用户正在登入服务器,此时并 不允许用户使用这个软件,或者应用程序把结果返回给用户之前,要进行某些耗时的计算。在这些情况下, 显示一个“进度条”对话框,能友好地让用户等待,同时也能阻止用户进行某些不必要的操作。

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_dialog2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:onClick="onClick2"
        android:text="Click to display a progress dialog" />     

</LinearLayout>

3. DialogActivity.java中的代码。

public class 

DialogActivity extends Activity {
    ProgressDialog progressDialog;     

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }     

    public void onClick2(View v) {
        // ---show the dialog---
        final ProgressDialog dialog = ProgressDialog.show(this,
                "Doing something", "Please wait...", true);
        new Thread(new Runnable() {
            public void run() {
                try {
                    // ---simulate doing something lengthy---
                    Thread.sleep(5000);
                    // ---dismiss the dialog---
                    dialog.dismiss();
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        }).start();
    }
}

4. 按F11调试,点击按钮,弹出“进度条”对话框。

开发入门(一)详解活动 1.5 显示进度对话框-android 进度条对话框">

基本 上,想要创建一个“进度条”对话框,只需要创建一个ProgressDialog类的实例,然后调用show()方法:

// ---show the dialog---
final ProgressDialog dialog = ProgressDialog.show(this,
        "Doing something", "Please wait...", true);

因为它是一个“模态”的对话框,所以 它就会把其他UI组件给遮盖住,直到它被解除。如果想要在后台执行一个“长期运行”的任务,可以创建一 个线程。run()方法里面的代码将会在一个独立的线程里面执行。下面的代码使用sleep()方法,模拟了一个 需要5秒执行的后台任务:

new Thread(new Runnable() {
    public void run() {
        try {
            // ---simulate doing something lengthy---
            Thread.sleep(5000);
            // ---dismiss the dialog---
            dialog.dismiss();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}).start();

5秒钟之后,执行dismiss()方法,对话框就被解除了。

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/extra/

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索对话框
, dialog
, 进度
, 代码执行进度
, dismiss
, progressdialog
, 一个
, progressdialog进度条
, 进度条详解
, 进度对话框
, Android进度按钮
, progressdialog用法
, 自定义progressdialog
ProgressDialog进度框
android 进度条对话框、android 进度对话框、进度条对话框、mfc 进度条对话框、安卓进度条对话框,以便于您获取更多的相关知识。

时间: 2024-11-03 13:30:46

Android开发入门(一)详解活动 1.5 显示进度对话框的相关文章

Android开发入门(一)详解活动 1.6 显示复杂对话框

除了"对话框"进度条,也可以创建一个显示"操作进度"的对话框,例如显示正在下载的状态. 1. 创建一个工程:Dialog. 2. main.xml中的代码. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" andro

Android开发入门(一)详解活动 1.4 显示普通对话框

有的时候,可能需要弹出一个对话框,以便从用户的输入来获取某些确认信息.这种情况下,可以重写 Activity基类中的受保护方法(protected)onCreateDialog(). 1. 创建一个工程:Dialog. 2. main.xml中的代码. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com

深入Android开发FAQ的详解_Android

Android 现在很火爆,其所谓的开放性和免费开源吸引了大批的手机硬件厂商进入了Android阵营.其火爆的另一个原因是因为其平台应用开发,正如Google所说,Android开发上手很快,很容易入门,比其他平台开发上手容易得多.但是,想要成为一个高手,或是开发出一个优质的程序,却没有想像中和所宣传的那么容易.首先的原因就是Android的文档很不完善,很多Api的文档都轻描淡写,对于参数的说明,对返回值的说明和对一些注意事项都没有说明,更为让人受不了的是,很多Api都没有文档:另外一个原因就

深入Android开发FAQ的详解

Android 现在很火爆,其所谓的开放性和免费开源吸引了大批的手机硬件厂商进入了Android阵营.其火爆的另一个原因是因为其平台应用开发,正如Google所说,Android开发上手很快,很容易入门,比其他平台开发上手容易得多.但是,想要成为一个高手,或是开发出一个优质的程序,却没有想像中和所宣传的那么容易.首先的原因就是Android的文档很不完善,很多Api的文档都轻描淡写,对于参数的说明,对返回值的说明和对一些注意事项都没有说明,更为让人受不了的是,很多Api都没有文档:另外一个原因就

android开发环境搭建详解(eclipse + android sdk)_Android

本开发环境为:eclipse + android sdk,步骤说明的顺序,没有特别要求,看个人爱好了 步骤说明: 1.安装eclipse 2.配置jdk 3.安装android sdk 4.安装ADT,关联eclipse和android 详细说明: 1.安装eclipse * 到官方网下载eclipse(http://www.eclipse.org/downloads/),我是下载的Eclipse IDE for Java EE Developers. * 正常解压安装,注意记得路径就可以了 2

Android开发入门系列

Android开发入门(二十)内容提供者 20.3 经过预定义的查询字符 Android开发入门(二十)内容提供者 20.2 ContentProvider的使用 Android开发入门(二十)内容提供者 20.1 数据共享 Android开发入门(十九)数据库 19.3 预创建数据库 Android开发入门(十九)数据库 19.2 使用数据库 Android开发入门(十九)数据库 19.1创建数据库辅助类 Android开发入门(十八)文件 18.4使用静态资源 Android开发入门(十八)

Android开发入门(一)详解活动 1.3 隐藏Activity的标题

如果愿意的话,可以把Activity的标题栏给隐藏了.只需要调用requestWindowFeature()方法,同时传递 Window.FEATURE_NO_TITLE常量. public class Activity101Activity extends Activity { String tag = "Lifecycle"; /** Called when the activity is first created. */ @Override public void onCrea

Android开发入门(一)详解活动 1.2 设置Activity的样式和主题

默认情况下,一个activity占据整个屏幕.然而,可以为一个activity设置一个"对话框"主题,这样, 它就能像一个浮动的对话框显示出来了.举个例子,你可能想要把你的activity定义成一个弹出的"对话框 ",通知用户进行一些操作.在这种情况下,显示一个"对话框"样式的anctivity是一个引起用户注意的好 方法.想要给activity设置主题,很简单,只需在AndroidManifest.xml文件中为<application&

Android开发入门(七)处理变化 7.4 设置活动的方向

偶尔地,你可能想要确保你的应用程序在某一个确定的方向上面显示,横屏模式或竖屏模式.例如,你可 能会开发一款只在横屏模式下面运行的游戏.在这种情况下,可以通过编写代码,强制把Activity的方向设 置为横向,这需要使用Activity类的setRequestOrientation()方法. import android.content.pm.ActivityInfo; @Override public void onCreate(Bundle savedInstanceState) { supe