ProgressDialog(三)——代码实现屏幕正中显示ProgressDialog(ProgressBar)

简介: MainActivity如下: package cc.testprogressdialog;import android.os.Bundle;import android.

MainActivity如下:

package cc.testprogressdialog;

import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
/**
 * Demo描述:
 * 利用代码在屏幕中间位置显示ProgressDialog和ProgressBar
 * 
 * 参考资料:
 * 1 http://blog.csdn.net/lfdfhl/article/details/18913435
 * 2 http://blog.csdn.net/lfdfhl/article/details/9299075
 * 3 http://rocye.iteye.com/blog/1258936
 *   Thank you very much
 *   
 * 如果在某个线性布局中动态添加一个控件,并且想让该控件在布局中居中.
 * 也可采用createProgressBar()方法中类似的方式
 *
 */
public class MainActivity extends Activity {
	private Context mContext;
	private ProgressBar mProgressBar;
    private ProgressDialog mProgressDialog;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		//显示ProgressBar
		createProgressBar();
		//显示ProgressDialog
		//createProgressDialog();
	}
	
	private void createProgressBar(){
		mContext=this;
		//整个Activity布局的最终父布局,参见参考资料
		FrameLayout rootFrameLayout=(FrameLayout) findViewById(android.R.id.content);
		FrameLayout.LayoutParams layoutParams=
	    new FrameLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
		layoutParams.gravity=Gravity.CENTER;
		mProgressBar=new ProgressBar(mContext);
		mProgressBar.setLayoutParams(layoutParams);
		mProgressBar.setVisibility(View.VISIBLE);
		rootFrameLayout.addView(mProgressBar);
	}
	
	
	private void createProgressDialog(){
		mContext=this;
		mProgressDialog=new ProgressDialog(mContext);
		mProgressDialog.setMessage("...请您稍等...");
		mProgressDialog.show();
	}

}

main.xml如下:

<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"
   >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="在屏幕中间位置显示ProgressDialog和ProgressBar"
        android:layout_centerHorizontal="true" />

</RelativeLayout>


相关文章
|
4月前
|
XML Android开发 数据格式
Android 中如何设置activity的启动动画,让它像dialog一样从底部往上出来
在 Android 中实现 Activity 的对话框式过渡动画:从底部滑入与从顶部滑出。需定义两个 XML 动画文件 `activity_slide_in.xml` 和 `activity_slide_out.xml`,分别控制 Activity 的进入与退出动画。使用 `overridePendingTransition` 方法在启动 (`startActivity`) 或结束 (`finish`) Activity 时应用这些动画。为了使前 Activity 保持静止,可定义 `no_animation.xml` 并在启动新 Activity 时仅设置新 Activity 的进入动画。
84 12
|
Android开发
Android 中SeekBar拖动条控件的基本用法
Android 中SeekBar拖动条控件的基本用法
154 0
Android 中SeekBar拖动条控件的基本用法
|
Android开发
Android 中PopupWindow弹出式窗口的使用
Android 中PopupWindow弹出式窗口的使用
69 0
Dialog和DialogFragment 设置背景透明
Dialog和DialogFragment 设置背景透明
1013 0
|
XML Android开发 数据格式
Android ProgressBar进度条,以及自定义显示
Android ProgressBar进度条,以及自定义显示
402 0
Android ProgressBar进度条,以及自定义显示
|
Android开发
Android点击View显示PopupWindow,再次重复点击View关闭PopupWindow
 Android点击View显示PopupWindow,再次重复点击View关闭PopupWindow 这本身是一个看似很简单的问题,但是如果设置不当,就可能导致莫名其妙失效问题。
1056 0