自定义加载中Dialog
来源:互联网 发布:淘宝开店需要交钱吗 编辑:程序博客网 时间:2024/05/04 12:54
一般在发起网络请求时,我们需要一个加载提示框,Android自带了progressDialog等待框,但是为了适应自己的体验,我们就需要自定义dialog了。
首先定义一个布局文件:custom_dialog.xml
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:background="@drawable/dialog_bg" android:padding="10dp" > <ProgressBar android:id="@+id/progress" android:layout_width="30dp" android:layout_height="30dp" android:layout_centerHorizontal="true" android:indeterminateDrawable="@drawable/progress_bg" /> <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:layout_centerHorizontal="true" android:layout_below="@id/progress" android:layout_marginTop="5dp" android:padding="2dp" android:textColor="#000000" android:textSize="12sp" android:text="加载中。。。" /></RelativeLayout>
一个ProgressBar 放一个旋转的图片,下面放一个TextView展示文字。
android:indeterminateDrawable="@drawable/progress_bg"
对应的背景动画为:
<?xml version="1.0" encoding="utf-8"?><animated-rotate xmlns:android="http://schemas.android.com/apk/res/android" android:drawable="@mipmap/ic_loading_white" android:pivotX="50%" android:pivotY="50%" />
loading_dialog :
<style name="loading_dialog" parent="android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowNoTitle">true</item> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:windowIsFloating">true</item> <item name="android:backgroundDimEnabled">true</item> <item name="android:background">@android:color/transparent</item> </style>
那么接着就要处理代码了:
package com.example.administrator.dialogtest01;import android.app.Dialog;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.drawable.Drawable;import android.text.TextPaint;import android.util.AttributeSet;import android.view.LayoutInflater;import android.view.View;import android.widget.LinearLayout;import android.widget.TextView;/** * 自定义dialog * */public class LoadingDialog { private Dialog dialog ; public LoadingDialog(Context context,String msg) { dialog = new Dialog(context,R.style.loading_dialog); //加载布局 View layout = LayoutInflater.from(context).inflate(R.layout.custom_dialog,null); TextView textView = (TextView)layout.findViewById(R.id.text); textView.setText(msg); //加载自定义布局 dialog.setContentView(layout); //设置不可取消 dialog.setCancelable(false); dialog.show(); }}这里只做show操作,使用的时候直接
new LoadingDialog(this,"登录中...");就可以,当然我们还需要dismiss ,用匿名对象不合适。这里只是做个示范。
demo地址
0 0
- 自定义加载中Dialog
- Android自定义加载中Dialog
- 实现圆形加载中效果自定义Dialog
- 自定义Dialog加载动画
- 加载底部自定义Dialog
- 自定义加载Dialog
- android 自定义Dialog页面加载中效果的进度条 Dialog 边角 Dialog 棱角
- Android项目中使用自定义进度加载Dialog
- Android 自定义加载框dialog
- Android 之自定义加载Dialog
- 怎么自定义Dialog加载动画
- android 中自定义dialog
- android中自定义dialog
- Android中自定义Dialog
- Android中自定义dialog
- Android中自定义Dialog
- Dialog中添加菜单【自定义Dialog】
- android中dialog(自定义dialog)的使用方法!!!
- 多元正太分布条件密度
- Android图表库MPAndroidChart(十)——散点图的孪生兄弟气泡图
- Android图表库MPAndroidChart(十)——散点图的孪生兄弟气泡图
- python安装和配置的网址
- Android图表库MPAndroidChart(九)——神神秘秘的散点图
- 自定义加载中Dialog
- jsp 内置对象
- Android图表库MPAndroidChart(八)——饼状图的扩展:折线饼状图
- 集合框架
- DOS下建立隐藏帐户
- JNI开发基础入门系列(一)
- CreateCompatibleDC与CreateCompatibleBitmap
- Spark共享变量-Broadcast广播变量介绍及scala实现
- 计算机的构成概述 --操作系统设计精髓与设计