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>


相关文章
|
存储 Java API
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
1896 0
|
11月前
|
数据采集 分布式计算 大数据
Pandas数据清洗:缺失值处理
本文详细介绍了Pandas库中处理缺失值的方法,包括检测缺失值、删除缺失值、填充缺失值和插值法填充缺失值。通过基础概念和代码示例,帮助读者理解和解决数据清洗中常见的缺失值问题。
685 80
|
存储 人工智能 API
飞天技术观|以大模型为中心,智能时代的云计算技术体系
模型的建立和训练离不开以云作为基础设施提供支撑,与此同时,生态繁荣还需要构建从底层模型到行业模型的整个模型生态。此外,我们也在不断升级整个应用开发范式,希望让云和AI的使用变得更简捷,不断降低技术的门槛,不断释放技术红利,让云和AI更普惠。
1415 0
|
存储 SQL 编解码
阿里 移动端(Android)编码规范
为指导 Android 开发者更加高效、高质量地进行 App 开发,呈现给用户体验好、性能优、稳定性佳、安全性高的产品。 本手册以开发者为中心视角分为Java语言规范,Android 资源文件命名与使用,Android 基本组件,UI 与布局,进程、线程与消息通信,文件与数据库,Bitmap、Drawable 与动画,安全,其他等九大部分,根据约束力强弱,规约依次分为强制、推荐、参考三大类:
1990 0
|
Java 开发工具
Springboot接入微信支付、支付宝支付
Springboot接入微信支付、支付宝支付
933 0
|
编译器 Linux 测试技术
【C++从0到王者】第十三站:vector源码分析及手把手教你如何写一个简单的vector
【C++从0到王者】第十三站:vector源码分析及手把手教你如何写一个简单的vector
375 0
|
Android开发
Android--fragment与activity及两个fragment之间的跳转实现
在应用的交互中,我可能需要实现: 从当前的fragment跳转到另一个fragment 从当前的fragment跳转到一个activity中 从当前的activity跳转到一个fragment中 网上提供的思路较多,这里总结了一套自己的方法。
2324 0
|
XML Android开发 数据格式
Android 底部导航栏(三、ViewPager+TabLayout+Fragment)简单易懂
底部导航栏在Android应用中随处可见,今天使用ViewPager+TabLayout+Fragment这三个控件来实现此功能。 前面使用了另外两个方法来实现导航栏,不过我还是更喜欢Viewpager,代码也少,毕竟前两个不能左右滑动。
|
算法 搜索推荐 程序员
C++ STL【常用算法】详解(全站最详细)
STL算法【保姆级教学】,简洁易懂,带你轻松入门STL算法模块,感受算法的魅力
2452 0
C++ STL【常用算法】详解(全站最详细)
|
Java 开发工具
IDEA统计代码行数
编写文档需要统计到对应项目的java代码行数,idea有一款插件可以很好的做到想要的效果
IDEA统计代码行数