android界面之美---自定义网络请求进度加载对话框
生活随笔
收集整理的這篇文章主要介紹了
android界面之美---自定义网络请求进度加载对话框
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.定義進度對話框類
<span style="font-size:18px;">public class ProgressDialog {public Dialog mDialog;private AnimationDrawable animationDrawable = null;public ProgressDialog(Context context, String message) {LayoutInflater inflater = LayoutInflater.from(context);View view = inflater.inflate(R.layout.progress_view, null);TextView text = (TextView) view.findViewById(R.id.progress_message);text.setText(message);ImageView loadingImage = (ImageView) view.findViewById(R.id.progress_view);loadingImage.setImageResource(R.drawable.progress_dialog_loding);animationDrawable = (AnimationDrawable)loadingImage.getDrawable();if(animationDrawable!=null){animationDrawable.setOneShot(false);animationDrawable.start();}mDialog = new Dialog(context, R.style.dialog);mDialog.setContentView(view);mDialog.setCanceledOnTouchOutside(false);}public void show() {mDialog.show();}public void setCanceledOnTouchOutside(boolean cancel) {mDialog.setCanceledOnTouchOutside(cancel);}public void dismiss() {if(mDialog.isShowing()) {mDialog.dismiss();animationDrawable.stop();}}public boolean isShowing(){if(mDialog.isShowing()) {return true;}return false;} }</span>2. 對話框布局文件
<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?> <FrameLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent"><LinearLayoutandroid:layout_width="80dp"android:layout_height="80dp"android:layout_gravity="center"android:background="@drawable/progress_bg"android:gravity="center"android:orientation="vertical"><ImageViewandroid:id="@+id/progress_view"android:layout_width="50dp"android:layout_height="50dp"android:src="@mipmap/bga_refresh_loading01"/><TextViewandroid:id="@+id/progress_message"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textColor="#d1d4d7"android:textSize="13sp"/></LinearLayout></FrameLayout></span> 3. <span style="font-size:18px;">progress_dialog_loding.xml 圖片加載動畫</span> <pre name="code" class="html"><span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?> <animation-list xmlns:android="http://schemas.android.com/apk/res/android"android:oneshot="false" ><itemandroid:drawable="@mipmap/bga_refresh_loading01"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading02"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading03"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading04"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading05"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading06"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading07"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading08"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading09"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading10"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading11"android:duration="100"/><itemandroid:drawable="@mipmap/bga_refresh_loading12"android:duration="100"/></animation-list></span>4.用到的圖片資源
5.在activity中使用
在onResume方法中
<span style="font-size:18px;">if (progressDialog == null) {progressDialog = new ProgressDialog(mContext, "正在加載...");progressDialog.show();}</span>在請求網絡成功或失敗后調用 progressDialog.dismiss();方法
總結
以上是生活随笔為你收集整理的android界面之美---自定义网络请求进度加载对话框的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android数据之Json解析
- 下一篇: anddroid异常处理之Uncaugh