自定义ProgressDialog的实现
来源:互联网 发布:怎么知道淘宝卖家地址 编辑:程序博客网 时间:2024/06/06 17:29
1.ProgressDialog之场景还原
最近在项目中,很多地方要加载H5界面,中间有个加载数据的空白档,为了不影响用户体验,ProgressDialog派上用场了。我喜欢简约,所以今天我就分享一个简约的自定义ProgressDialog的实现,效果图如下:
2.自定义ProgressDialog的用法
1.自定义ProgressDialog的style(在value的style.xml文件中添加)
<style name="progress_dialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowIsFloating">true</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> <item name="android:background">@null</item> <item name="android:windowBackground">@null</item> <item name="android:backgroundDimEnabled">false</item></style>2.在drawable中添加动画文件progress_drawable_white.xml:
<?xml version="1.0" encoding="utf-8"?><animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="83" android:drawable="@drawable/ic_loading_white_01" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_02" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_03" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_04" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_05" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_06" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_07" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_08" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_09" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_10" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_11" /> <item android:duration="83" android:drawable="@drawable/ic_loading_white_12" /></animation-list>3.自定义ProgressDialog的布局(在layout下创建dialog.xml文件)
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/ic_loading_bg" android:gravity="center" android:orientation="vertical" android:padding="16.0dip" > <ProgressBar android:layout_width="45dip" android:layout_height="45dip" android:indeterminateDrawable="@drawable/progress_drawable_white" /> <TextView android:id="@+id/id_tv_loadingmsg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_marginTop="8.0dip" android:textColor="#fff" android:textSize="16.0dip" /></LinearLayout>4.创建自定义ProgressDialog类(一般放在工程的util目录下)
public class ProgressDialog { private Dialog progressDialog; public ProgressDialog(Context context) { progressDialog = new Dialog(context,R.style.progress_dialog); progressDialog.setContentView(R.layout.dialog); progressDialog.setCancelable(true); progressDialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent); TextView msg = (TextView) progressDialog.findViewById(R.id.id_tv_loadingmsg); msg.setText("正在加载中"); } public void showDialog(){ progressDialog.show(); } public void cancelDialog(){ progressDialog.dismiss(); }}大功告成,然后就是showDialog()调用了!好了,今天就到此为止,我是张星,欢迎您的关注,后期章节更精彩!传送门地址:http://download.csdn.net/detail/zhangxing52077/9717978
2 0
- 自定义ProgressDialog的实现
- 自定义ProgressDialog的实现
- Android自定义 ProgressDialog的实现
- Android 之 自定义progressdialog的实现
- 自定义ProgressDialog进度条对话框的实现
- 自定义ProgressDialog进度条对话框的实现
- android 自定义progressDialog实现
- android 自定义progressDialog实现
- Android 自定义progressDialog实现
- Android 自定义progressDialog实现
- Android 自定义progressDialog实现
- Android 自定义progressDialog实现
- Android 自定义progressDialog实现
- Android 自定义progressDialog实现
- Android 自定义progressDialog实现
- Android 自定义progressDialog实现
- Android 自定义progressDialog实现
- android 自定义progressDialog实现
- 分布式多级缓存中间件引导实践
- 写简答题
- C语言 - 分解字符串函数分解英语句子
- web网络安全——网站入侵(三)
- 分布式hadoop【CentOS7】
- 自定义ProgressDialog的实现
- 华为机试题--明明随机数
- 关于MAP的值排序
- mysql 用户管理
- JS获取搜索引擎关键字
- 唯一主键生成方案学习笔记
- 进度条加载
- USACO2014JanuaryGold
- Boostrap学习笔记一: popover用法