dialog加载动画实例
2015-10-13 12:50
288 查看
1,DialogLoadingUtil 类
public class DialogLoadingUtil {
private Context context;
public DialogLoadingUtil(Context context){
this.context=context;
}
@SuppressLint("NewApi")
public Dialog showDialog(){
Dialog dialog=new Dialog(context);
dialog = new Dialog(context, R.style.loading);
View view=View.inflate(context, R.layout.loadinglayout, null);
ImageView iv_anim=(ImageView) view.findViewById(R.id.iv_anim);
iv_anim.setBackgroundResource(R.drawable.loading);
AnimationDrawable animationDrawable = (AnimationDrawable) iv_anim.getBackground();
animationDrawable.start();
dialog.setContentView(view);//此处布局为一个progressbar
dialog.setCancelable(true); // 可以取消
dialog.show();
// WindowManager.LayoutParams params = dialog.getWindow().getAttributes();
// params.height = -1;
// params.width = -1;
// params.format=1;
// params.flags = LayoutParams.FLAG_FULLSCREEN | LayoutParams.FLAG_LAYOUT_IN_SCREEN;
// dialog.getWindow().setAttributes(params);
return dialog;
}
2,loading
<style name="loading">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item> <!-- 模糊 -->
<item name="android:windowIsFloating">true</item> <!-- 类似windows的弹出Dialog -->
<item name="android:windowContentOverlay">@null</item> <!-- 不要头部阴影 -->
<item name="android:windowBackground">@android:color/transparent</item> <!-- 背景颜色设置透明 -->
</style>
3,loadinglayout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center" >
<!-- <ProgressBar
android:id="@+id/loadingbar"
style="@style/loadingStyle"
android:layout_width="199dp"
android:layout_height="180dp"
android:layout_gravity="center"
>
</ProgressBar> -->
<ImageView
android:id="@+id/iv_anim"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14dp"
android:text="加载中..."
/>
</LinearLayout>
4,drawable的loading
<?xml version="1.0" encoding="UTF-8"?>
<animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android">
<item android:duration="150" android:drawable="@drawable/anim1_1" />
<item android:duration="150" android:drawable="@drawable/anim1_2" />
<item android:duration="150" android:drawable="@drawable/anim1_3" />
<item android:duration="150" android:drawable="@drawable/anim1_4" />
<item android:duration="150" android:drawable="@drawable/anim1_5" />
<item android:duration="150" android:drawable="@drawable/anim1_6" />
</animation-list>
public class DialogLoadingUtil {
private Context context;
public DialogLoadingUtil(Context context){
this.context=context;
}
@SuppressLint("NewApi")
public Dialog showDialog(){
Dialog dialog=new Dialog(context);
dialog = new Dialog(context, R.style.loading);
View view=View.inflate(context, R.layout.loadinglayout, null);
ImageView iv_anim=(ImageView) view.findViewById(R.id.iv_anim);
iv_anim.setBackgroundResource(R.drawable.loading);
AnimationDrawable animationDrawable = (AnimationDrawable) iv_anim.getBackground();
animationDrawable.start();
dialog.setContentView(view);//此处布局为一个progressbar
dialog.setCancelable(true); // 可以取消
dialog.show();
// WindowManager.LayoutParams params = dialog.getWindow().getAttributes();
// params.height = -1;
// params.width = -1;
// params.format=1;
// params.flags = LayoutParams.FLAG_FULLSCREEN | LayoutParams.FLAG_LAYOUT_IN_SCREEN;
// dialog.getWindow().setAttributes(params);
return dialog;
}
2,loading
<style name="loading">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item> <!-- 模糊 -->
<item name="android:windowIsFloating">true</item> <!-- 类似windows的弹出Dialog -->
<item name="android:windowContentOverlay">@null</item> <!-- 不要头部阴影 -->
<item name="android:windowBackground">@android:color/transparent</item> <!-- 背景颜色设置透明 -->
</style>
3,loadinglayout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center" >
<!-- <ProgressBar
android:id="@+id/loadingbar"
style="@style/loadingStyle"
android:layout_width="199dp"
android:layout_height="180dp"
android:layout_gravity="center"
>
</ProgressBar> -->
<ImageView
android:id="@+id/iv_anim"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14dp"
android:text="加载中..."
/>
</LinearLayout>
4,drawable的loading
<?xml version="1.0" encoding="UTF-8"?>
<animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android">
<item android:duration="150" android:drawable="@drawable/anim1_1" />
<item android:duration="150" android:drawable="@drawable/anim1_2" />
<item android:duration="150" android:drawable="@drawable/anim1_3" />
<item android:duration="150" android:drawable="@drawable/anim1_4" />
<item android:duration="150" android:drawable="@drawable/anim1_5" />
<item android:duration="150" android:drawable="@drawable/anim1_6" />
</animation-list>
相关文章推荐
- 谷歌很多服务的IP已转回北京、上海
- 结构化程序设计和面向对象程序设计的特点及优缺点
- 自定义无序广播并接受信息
- codeforces #325
- Ubuntu下使用Vi时方向键变乱码 退格键不能使用的解决方法
- 十六进制之间的转换(二进制、八进制、十六进制、十进制)
- 一步步教你如何在 Visual Studio 2013 上使用 Github
- Unity3D的两个坑
- Hibernate 数据的批量插入、更新和删除
- this关键字和严格模式
- (一)nodejs开发环境搭建: 安装nodejs以及配置npm
- C++入门学习——explicit关键字的作用
- C#实现语音视频录制-附demo源码
- 关于 initWithNibName 和 loadNibNamed 的区别和联系
- ListView的优化问题
- 内存泄漏以及常见的解决方法
- Cookie/Session机制详解
- Foundations of Qt Development 学习笔记 Part1 Tips1-50
- OpenStack简易安装教程--Havana版本
- activity异常被系统杀死处理方法