安卓 自定义AlertDialog对话框(加载提示框)

AlertDialog有以下六种使用方法:

一、简单的AlertDialog(只显示一段简单的信息)

二、带按钮的AlertDialog(显示提示信息,让用户操作)

三、类似ListView的AlertDialog(展示内容)

四、类似RadioButton的AlertDialog(让用户选择,单选)

五、类似CheckBox的AlertDialog(让用户多选)

六、自定义View的AlertDialog(当以上方式满足不了你的需求,就要自定义了)

这里写的就是第六种用法,效果图如下(效果类似与IOS中的MBProgressHUD)

具体实现如下:

.java代码

// 自定义弹出框,框内放入图片,图片设置旋转动画AlertDialog alert_progress = new AlertDialog.Builder(当前activity.this).create();alert_progress.show(); alert_progress.setCancelable(false); // 点击背景时对话框不会消失// alert_progress.dismiss(); // 取消对话框Window window = alert_progress.getWindow();window.setContentView(R.layout.alert_dialog_progress_view); //加载自定义的布局文件
WindowManager.LayoutParams wm = window.getAttributes();wm.width = 250; // 设置对话框的宽wm.height = 200; // 设置对话框的高wm.alpha = 0.5f;   // 对话框背景透明度wm.dimAmount = 0.6f; // 遮罩层亮度window.setAttributes(wm); 

ImageView img = (ImageView)window.findViewById(R.id.progress_bar);  // 获取布局文件中的ImageView控件img.setBackgroundResource(R.drawable.loading_one); // 设置图片,也可在布局文件中设置

// 设置旋转动画
Animation tranfrom = new RotateAnimation(0,359,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);(359:旋转角度(可自调),若为360会有卡顿,正数为顺势针旋转,负数为逆时针)tranfrom.setDuration(2000); // 旋转速度tranfrom.setFillAfter(true); tranfrom.setRepeatCount(-1); // -1为一只旋转,若10,则旋转10次设定的角度后停止// tranfrom.cancel();  // 取消动画img.setAnimation(tranfrom);
布局代码:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:background="@color/colorBlack">

    <ImageView        android:id="@+id/progress_bar"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_gravity="center"        android:layout_marginTop="10dp"        android:layout_marginBottom="10dp"/>

    <TextView        android:text="正在加载..."        android:layout_width="match_parent"        android:layout_height="20dp"        android:textColor="@color/colorWhite"        android:layout_gravity="center"        android:gravity="center"/>

</LinearLayout>

附:旋转背景图   

				
时间: 2024-11-08 23:11:28

安卓 自定义AlertDialog对话框(加载提示框)的相关文章

常用宏定义 - 设置加载提示框

1.第三方框架:Toast /** 第三方框架:Toast */ #define kToast(str) CSToastStyle *style = [[CSToastStyle alloc] initWithDefaultStyle]; [kWindow makeToast:str duration:0.6 position:CSToastPositionCenter style:style];kWindow.userInteractionEnabled = NO; dispatch_afte

自定义加载等待框(MBProgressHUD)

一.网上下载  MBProgessHUD 类文件,直接导入到工程即可 二.示例分析 在我的工程中示例如下: 1)在ShowImageViewController.h头文件代码如下: #import <UIKit/UIKit.h> #import "MBProgressHUD.h" @interface ShowImageViewController : UIViewController<MBProgressHUDDelegate> { NSString     

IOS开发UI篇之──自定义加载等待框(MBProgressHUD)

本文转载至 http://blog.csdn.net/xunyn/article/details/8064984 原文地址http://www.189works.com/article-89289-1.html MBProgressHUD 下载地址是: http://github.com/matej/MBProgressHUD 这里介绍一下网友开源的MBProgressHUD类,实现等待框, 一.网上下载  MBProgessHUD 类文件,直接导入到工程即可 二.示例分析 在我的工程中示例如下

自定义类加载器——加载任意指定目录的class文件

public class MyClassLoader extends ClassLoader{ String path;//自定义类加载器所负责的文件夹 public MyClassLoader(String path) { super(); this.path = path; } @SuppressWarnings("deprecation") @Override protected Class<?> findClass(String name) throws Class

jQuery Ajax封装(附带加载提示和请求结果提示模版)

1.创建HTML文件(demo) <!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>jQuery Ajax</title> <script type="text/javascript" src="jquery-3.2.0.min.js"></sc

java 自定义类的加载器

首先介绍自定义类的应用场景: (1)加密:Java代码可以轻易的被反编译,如果你需要把自己的代码进行加密以防止反编译,可以先将编译后的代码用某种加密算法加密,类加密后就不能再用Java的ClassLoader去加载类了,这时就需要自定义ClassLoader在加载类的时候先解密类,然后再加载. (2)从非标准的来源加载代码:如果你的字节码是放在数据库.甚至是在云端,就可以自定义类加载器,从指定的来源加载类. (3)以上两种情况在实际中的综合运用:比如你的应用需要通过网络来传输 Java 类的字节

JVM自定义类加载器加载指定classPath下的所有class及jar

一.JVM中的类加载器类型 从Java虚拟机的角度讲,只有两种不同的类加载器:启动类加载器和其他类加载器. 1.启动类加载器(Boostrap ClassLoader):这个是由c++实现的,主要负责JAVA_HOME/lib目录下的核心 api 或 -Xbootclasspath 选项指定的jar包装入工作. 2.其他类加载器:由java实现,可以在方法区找到其Class对象.这里又细分为几个加载器 a).扩展类加载器(Extension ClassLoader):负责用于加载JAVA_HOM

iOS MBProgressHUD 之带底板的加载提示

文章来自:http://blog.csdn.net/ryantang03/article/details/7877120 MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单.方便,并且可以对显示的内容进行自定义,功能很强大,很多项目中都有使用到.到GitHub上可以下载到项目源码https://github.com/jdg/MBProgressHUD,下载下来后直接把MBProgressHUD.h和MBProgressHUD.m拖入工程中就行,别忘了选择拷贝到工程.完

WINDOWS程序设计对话框加载显示bmp图像及刷新

参考文章:http://blog.csdn.net/wangjian8006/article/details/7464431 图片的加载与显示也是属于窗口绘制这一部分的.所以其代码要写在消息函数的WM_PAINT消息下. (这个代码图片路径是写死的,图片不会变,下面会讲该怎么刷新图片) // 处理对话框消息 INT_PTR CALLBACK DlgProc(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTR