1.首先准备两张自己要定义成哪样子的效果的图片和背景图片(也可以不要背景)。 如我要的效果:
2.定义loading_dialog.xml布局文件(这里你也可以按自己的布局效果定义,关键是要有个imageView):
[html] view plaincopy
1.
2. 14. android:layout_width=\"wrap_content\" 15. android:layout_height=\"wrap_content\" 16. android:src=\"@drawable/publicloading\" 17. /> 18. 24.
3.定义一个loadingDialog中imageView转动的动画:loading_animation.xml
[html] view plaincopy
1.
2.
4.定义dialog的style.
[java] view plaincopy
1.
2.
5.写点创建Dialog的代码,你可以自己封装成一个方法。
[java] view plaincopy
1. /**
2. * 得到自定义的progressDialog 3. * @param context 4. * @param msg 5. * @return
6. */
7. public static Dialog createLoadingDialog(Context context, String msg) {
8.
9. LayoutInflater inflater = LayoutInflater.from(context);
10. View v = inflater.inflate(R.layout.loading_dialog, null);// 得到加载
view
11. LinearLayout layout = (LinearLayout) v.findViewById(R.id.dialog_view
);// 加载布局
12. // main.xml中的ImageView
13. ImageView spaceshipImage = (ImageView) v.findViewById(R.id.img); 14. TextView tipTextView = (TextView) v.findViewById(R.id.tipTextView);/
/ 提示文字
15. // 加载动画
16. Animation hyperspaceJumpAnimation = AnimationUtils.loadAnimation( 17. context, R.anim.load_animation); 18. // 使用ImageView显示动画
19. spaceshipImage.startAnimation(hyperspaceJumpAnimation); 20. tipTextView.setText(msg);// 设置加载信息 21.
22. Dialog loadingDialog = new Dialog(context, R.style.loading_dialog);/
/ 创建自定义样式dialog 23.
24. loadingDialog.setCancelable(false);// 不可以用“返回键”取消
25. loadingDialog.setContentView(layout, new LinearLayout.LayoutParams(
26. LinearLayout.LayoutParams.FILL_PARENT,
27. LinearLayout.LayoutParams.FILL_PARENT));// 设置布局 28. return loadingDialog; 29. 30. }
最后来张整体的效果图:
因篇幅问题不能全部显示,请点此查看更多更全内容