android 自定义loading动画
来源:互联网 发布:喀秋莎录屏软件8 编辑:程序博客网 时间:2024/04/30 17:41
1、LoadingDialog.java
/** * */package com.egreat.db;import android.app.Dialog;import android.content.Context;import android.graphics.Point;import android.graphics.drawable.AnimationDrawable;import android.util.Log;import android.view.Display;import android.view.Gravity;import android.view.LayoutInflater;import android.view.View;import android.view.Window;import android.view.WindowManager;import android.widget.FrameLayout;import android.widget.ImageView;import android.widget.LinearLayout;import com.jrm.localmm.R;/** * @author peter.wen * */public class LoadingDialog {private Context mContext;Dialog loadingDialog;public LoadingDialog(Context mContext) {this.mContext = mContext ;LayoutInflater inflater = LayoutInflater.from(mContext);View v = inflater.inflate(R.layout.loading, null);FrameLayout layout = (FrameLayout) v.findViewById(R.id.dialog_view);ImageView wLoading = (ImageView) v.findViewById(R.id.loading); wLoading.setBackgroundResource(R.drawable.loading_animation); AnimationDrawable ad=(AnimationDrawable) wLoading.getBackground(); ad.start(); loadingDialog = new Dialog(mContext, R.style.dialog);loadingDialog.setContentView(layout, new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT)); Window dialogWindow = loadingDialog.getWindow(); WindowManager.LayoutParams lp = dialogWindow.getAttributes(); dialogWindow.setGravity(Gravity.CENTER); Display display = dialogWindow.getWindowManager().getDefaultDisplay(); Point point = new Point(); display.getSize(point); // 宽度 lp.height = point.y; // 高度 lp.width = point.x; dialogWindow.setAttributes(lp);}public void show(){loadingDialog.show();}public void dismiss(){loadingDialog.dismiss();}public boolean isShowing(){return loadingDialog.isShowing();}}
2、loading.xml 放在layout目录下
<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/dialog_view" android:layout_width="match_parent" android:layout_height="match_parent" > <ImageView android:id="@+id/loading" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:background="@drawable/loading_animation" /></FrameLayout>
3、loading_animation.xml 放在drawable目录下
<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false"> <item android:drawable="@drawable/loading_1" android:duration="200" /> <item android:drawable="@drawable/loading_2" android:duration="200" /> <item android:drawable="@drawable/loading_3" android:duration="200" /> <item android:drawable="@drawable/loading_4" android:duration="200" /> <item android:drawable="@drawable/loading_5" android:duration="200" /> <item android:drawable="@drawable/loading_6" android:duration="200" /> <item android:drawable="@drawable/loading_7" android:duration="200" /> <item android:drawable="@drawable/loading_8" android:duration="200" /></animation-list>
4、styles.xml 放在values目录下
<?xml version="1.0" encoding="UTF-8"?><resources> <style name="dialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <!-- 边框 --> <item name="android:windowIsFloating">true</item> <!-- 是否浮现在activity之上 --> <item name="android:windowIsTranslucent">false</item> <!-- 半透明 --> <item name="android:windowNoTitle">true</item> <item name="android:background">@null</item> <item name="android:windowBackground">@drawable/set_bg</item> <item name="android:backgroundDimEnabled">false</item> <!-- 模糊 --> </style> <!--对话框风格 --> <style name="dialog_no_white" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowIsFloating">true</item> <item name="android:windowIsTranslucent">false</item> <item name="android:windowNoTitle">true</item> <!-- <item name="android:background">@android:color/black</item> --> <item name="android:windowBackground">@color/black</item> <item name="android:backgroundDimEnabled">false</item> </style> <style name="choose_time_dialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <!-- 边框 --> <item name="android:windowIsFloating">true</item> <!-- 是否浮现在activity之上 --> <item name="android:windowIsTranslucent">false</item> <!-- 半透明 --> <item name="android:windowNoTitle">true</item> <item name="android:background">@null</item> <item name="android:backgroundDimEnabled">false</item> <!-- 模糊 --> </style> <style name="video_menubg"> <item name="android:layout_width">fill_parent</item> <item name="android:layout_height">fill_parent</item> <item name="android:layout_marginLeft">39dp</item> <item name="android:layout_marginTop">39dp</item> <item name="android:layout_marginRight">39dp</item> <item name="android:layout_marginBottom">39dp</item> <item name="android:background">#00634e</item> <item name="android:paddingLeft">10dp</item> <item name="android:paddingRight">10dp</item> </style> <style name="menuList"> <item name ="android:listSelector">@drawable/set_button</item> <item name="android:scrollbarThumbVertical">@drawable/indicate</item> <item name="android:scrollbarTrackVertical">@drawable/indicatebg</item></style> <style name="InstallDialog" parent="@android:Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowNoTitle">true</item> <item name="android:windowIsFloating">true</item> <item name="android:windowBackground">@null</item> <item name="android:windowContentOverlay">@null</item> </style></resources>
0 0
- android 自定义loading动画
- 【Android UI】自定义圆形Loading动画
- Android 自定义View 实现loading动画
- 自定义loading 以及动画loading
- [cocos2dx]自定义loading动画
- Android自定义progressDialog实现loading载中动画效果
- Android自定义progressDialog实现 loading 载入中 动画效果
- 【Android实战】使用帧动画实现自定义loading加载布局
- Android 帧动画实现自定义loading加载框
- Android自定义Loading
- Android 自定义loading
- Android loading Dialog 自定义
- Android 方块移动Loading动画
- Android 水瓶动画,贝塞尔Loading
- silverlight初始化屏幕,自定义loading动画
- 自定义View实现loading动画加载
- 自定义View实现百度Loading动画
- 自定义View实现百度Loading动画
- SVM(支持向量机)- 基本思想(一)
- 苹果 Cocoa 编码规范中文版
- firebug调试篇——console篇
- 世界上最可怕的事就是比你聪明的人比你还努力,还认真。
- JAVAEE项目中 Maven 的应用
- android 自定义loading动画
- amazon ec2免费部署指南
- 最牛B的编码套路
- 进程与线程的区别和联系
- 建設時機 (朝鮮歷史 韓長庚)
- mongodb性能压测
- AdaBoost算法的训练过程
- .NET、C#和ASP.NET的关系
- IOS关灯小游戏