android界面之美---自定义网络请求进度加载对话框
1.定义进度对话框类
<span style="font-size:18px;">public class ProgressDialog {public Dialog mDialog;private AnimationDrawable animationDrawable = null;public ProgressDialog(Context context, String message) {LayoutInflater inflater = LayoutInflater.from(context);View view = inflater.inflate(R.layout.progress_view, null);TextView text = (TextView) view.findViewById(R.id.progress_message);text.setText(message);ImageView loadingImage = (ImageView) view.findViewById(R.id.progress_view);loadingImage.setImageResource(R.drawable.progress_dialog_loding);animationDrawable = (AnimationDrawable)loadingImage.getDrawable();if(animationDrawable!=null){animationDrawable.setOneShot(false);animationDrawable.start();}mDialog = new Dialog(context, R.style.dialog);mDialog.setContentView(view);mDialog.setCanceledOnTouchOutside(false);}public void show() {mDialog.show();}public void setCanceledOnTouchOutside(boolean cancel) {mDialog.setCanceledOnTouchOutside(cancel);}public void dismiss() {if(mDialog.isShowing()) {mDialog.dismiss();animationDrawable.stop();}}public boolean isShowing(){if(mDialog.isShowing()) {return true;}return false;}
}</span>
2. 对话框布局文件
<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?>
<FrameLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent"><LinearLayoutandroid:layout_width="80dp"android:layout_height="80dp"android:layout_gravity="center"android:background="@drawable/progress_bg"android:gravity="center"android:orientation="vertical"><ImageViewandroid:id="@+id/progress_view"android:layout_width="50dp"android:layout_height="50dp"android:src="@mipmap/bga_refresh_loading01"/><TextViewandroid:id="@+id/progress_message"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textColor="#d1d4d7"android:textSize="13sp"/></LinearLayout></FrameLayout></span>
3.
<span style="font-size:18px;">progress_dialog_loding.xml 图片加载动画</span>
<pre name="code" class="html"><span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"android:oneshot="false" ><itemandroid:drawable="@mipmap/bga_refresh_loading01"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading02"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading03"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading04"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading05"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading06"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading07"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading08"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading09"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading10"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading11"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading12"android:duration="100"/></animation-list></span>
4.用到的图片资源
5.在activity中使用
在onResume方法中
<span style="font-size:18px;">if (progressDialog == null) {progressDialog = new ProgressDialog(mContext, "正在加载...");progressDialog.show();}</span>
在请求网络成功或失败后调用
progressDialog.dismiss();方法
android界面之美---自定义网络请求进度加载对话框相关推荐
- Android---RecyclerView网络请求图片加载
RecyclerView的基本使用 什么是RecyclerView recycleview是support-v7包中的新组件,是一个强大的滑动组件,从它的名字recyclerview可以看出它具有回收 ...
- 小程序 ajax 加载,小程序实战-小程序网络请求异步加载
最初看到小程序的网络请求的时候,尤其是演示示例中,userInfoReadyCallback这个函数更是一头雾水.其实并不怎么理解.一直很费解.网上各路大侠都有解释,但是就是,不知道是怎么个顺序,而我 ...
- Android 页面或文件或网络请求时的加载动画
//加载图片或页面或网络请求时出现加载动画 public Class LoadingAnimation{ private static LoadingAnimation loadingAnimatio ...
- Android 自定义进度加载动画
偶尔浏览一个android开发网站,发现进度加载动画比较不错,觉得挺有意思 就自己参考了下自己做了一个进度加载动画 效果图如下: 首选来看自定义动画 package com.itzb.paintdem ...
- android搭建网络框架,Android 搭建MVP+Retrofit+RxJava网络请求框架(三)
上一篇中主要是将mvp+rxjava+retrofit进行了结合,本篇主要是对mvp框架的优化:建议先去看上一篇:Android 搭建MVP+Retrofit+RxJava网络请求框架(二) 针对vi ...
- android自定义笑脸,Android实现笑脸进度加载动画
最近看到豆瓣的笑脸loading很有意思,看一张效果图: 下面分析一下如何实现这样的效果: 1.默认状态是一张笑脸的状态(一个嘴巴,两个眼睛,默认状态) 2.开始旋转,嘴巴追上眼睛(合并状态) 3.追 ...
- android dialog 自定义布局,Android自定义Dialog实现加载对话框效果
前言 最近开发中用到许多对话框,之前都是在外面的代码中创建AlertDialog并设置自定义布局实现常见的对话框,诸如更新提示等含有取消和删除两个按钮的对话框我们可以通过代码创建一个AlertDial ...
- android 动态水球,Canvas 制作动态进度加载水球详解及实例代码
Canvas 动态进度加载水球 前言 之前看到一些球型的动态加载的效果,一直想自己动手做一个,正好这段时间重温了一个Canvas,所以就尝试了一下. 实现思路 关于水波的实现,使用了sin()函数,通 ...
- Android图片管理组件(双缓存+异步加载)
转自:http://www.oschina.net/code/snippet_219356_18887?p=3#comments ImageManager2这个类具有异步从网络下载图片,从sd读取本地 ...
最新文章
- java signature 性能_Java常见bean mapper的性能及原理分析
- 利用zxing读写PDF417码制的二维码
- 素数的判断,以及素数的遍历
- oracle几个状态,oracle启动的四个状态
- 服务器升级中不能修改信息,服务器升级页面
- Java中12个原子操作类
- FreeRTOS空闲任务
- mysql 有索引 不被使用方法_MySQL教程100-索引在什么情况下不会被使用?
- 搜狐被SEC列入“预摘牌名单”!回应:不打算提出异议
- 彪悍语录系列(摘于网络)
- java编写一个web 留言板_Java Web在线留言板
- au计算机内录音乐,电脑中如何使用 Audition 内录声音
- 【正则】只保留中文、英文的正则表达式
- LBM学习记录4 Python实现D3Q19圆柱绕流
- 计算机硬件系统主机主要包括,组成计算机硬件系统的基本部分是什么?
- php base64互转pdf 将base64解析成pdf
- 架构设计:系统间通信(36)——Apache Camel快速入门(上)
- 删除集合中特定元素的几种情况
- Mac电脑调用自带的命令行窗口
- 写给20岁读者的一些人生建议
热门文章
- pku 1850 Code 组合数学排列组合的应用
- 有趣的MS Live Labs
- Python学习笔记:虚拟环境和包
- vlc linux将摄像头串流,vlc的应用之九:用vlc串流摄像头
- 【Python】字典(Dictionary) items()方法
- 清华大学保研笔试题目及解答
- [云炬创业基础笔记] 第四章测试15
- 20天减10斤 2020-10-21
- 一文详解神经网络模型
- 北理工 管理系统计算机仿真作业,20秋北理工《CADCAM原理与应用》--模拟3-答案 更…...