3.3 进度对话框

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.3 进度对话框相关的知识,希望对你有一定的参考价值。

进度对话框是另一个常见的用户界面功能,它在应用程序执行长时间运行的任务时显示一种等待状态。显示“进度对话框”很有帮助,这样用户可以知道操作正在进行中。实现进度对话框采用ProgressDialog组件完成

技术分享

ProgressDialog组件在初始化的时候直接调用ProgressDialog.show(...)就能完成包括进度对话框加载效果

布局文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/app_dialog"
        android:onClick="onClick">
        
    </Button>

</RelativeLayout>

MainActivity完成的代码实现

package com.gxa;

import android.os.Bundle;
import android.app.Activity;
import android.app.ProgressDialog;
import android.view.Menu;
import android.view.View;

public class MainActivity extends Activity {
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
    
    public void onClick(View view) {
        onCreateProgressDialog();
    }
    
    public void onCreateProgressDialog() {
        final ProgressDialog dialog = ProgressDialog.show(this, "进度", "应用程序初始化中...", true); //设置进度条对话框,true是一个模式对话框
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    Thread.sleep(3000);
                    dialog.dismiss();
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        }).start();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

}

文章内容来自:国信安刘阳

 

以上是关于3.3 进度对话框的主要内容,如果未能解决你的问题,请参考以下文章

如何在家庭活动android上显示进度对话框?

显示没有文本Android的进度对话框

从mysql的片段中加载ListView

Honeycomb 中的片段加载微调器/对话框

ProgressDialog 已弃用 [重复]

活动到片段方法调用带有进度条的线程