参考文章:http://www.androidchina.net/2297.html
在原文的基础上,只做了少量修改,就是把两个类合成了一个类,并且加上了五秒之后dialog被dismiss的两种方法。
1.首先是动画文件 :一张图片360一直旋转
<animated-rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/loading2"
android:fromDegrees="0.0"
android:pivotX="50.0%"
android:pivotY="50.0%"
android:toDegrees="360.0" />
注:此处为父布局添加 android:background=”@android:color/transparent” 属性,使布局透明。
2.自定义方法加载dialog
public class DialogUtils {
/**
* 创建自定义ProgressDialog
*/
public static Dialog createLoadingDialog(Context context) {
LayoutInflater inflater = LayoutInflater.from(context);
View v = inflater.inflate(R.layout.layout_loading_dialog, null); // 得到加载view
LinearLayout layout = (LinearLayout) v.findViewById(R.id.dialog_view); // 加载布局
Dialog loadingDialog = new Dialog(context, R.style.loading_dialog); // 创建自定义样式dialog
loadingDialog.setCancelable(false); // 不可以用"返回键"取消
loadingDialog.setContentView(layout, new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT));
return loadingDialog;
}
}
注:此方法中设置了 loadingDialog.setCancelable(false); 即:不可以用”返回键”取消,若不需要可注释掉。