当前位置:操作系统 > 安卓/Android >>

Android自定义弹窗进度条

Android自定义进度条主要是修改ProgressBar的style,弹窗则是在Dialog里显示ProgressBar。
直接上代码。
        在style.xml里加入如下代码:
[html]  
<style name="ProgressBar_Mini" parent="@android:style/Widget.ProgressBar.Horizontal">  
       <item name="android:maxHeight">50dip</item>  
       <item name="android:minHeight">8dip</item>  
       <item name="android:indeterminateOnly">false</item>  
       <item name="android:indeterminateDrawable">@android:drawable/progress_indeterminate_horizontal</item>  
       <item name="android:progressDrawable">@drawable/progressbar_mini</item>  
   </style>  
新建drawable/progressbar_mini.xml内容如下:
[html]  
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >  
    <item android:id="@android:id/background">  
        <shape>  
            <corners android:radius="0dip" />  
            <gradient  
                android:angle="270"  
                android:centerY="0.75"  
                android:endColor="#F5F5F5"  
                android:startColor="#BEBEBE" />  
        </shape>  
    </item>  
   
    <item android:id="@android:id/secondaryProgress">  
        <clip>  
            <shape>  
                <corners android:radius="0dip" />  
                <gradient  
                    android:angle="270"  
                    android:centerY="0.75"  
                    android:endColor="#165CBC"  
                    android:startColor="#85B0E9" />  
            </shape>  
        </clip>  
    </item>  
   
    <item android:id="@android:id/progress">  
        <clip>  
            <shape>  
                <corners android:radius="0dip" />  
                <gradient  
                    android:angle="270"  
                    android:centerY="0.75"  
                    android:endColor="#00FF66"  
                    android:startColor="#00FF66" />  
            </shape>  
        </clip>  
    </item>  
</layer-list>  
myprogressbar.xml的内容如下:
[html]  
<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:layout_width="match_parent"  
    android:layout_height="match_parent"  
    android:background="@drawable/back_qian"  
    android:gravity="center"  
    android:orientation="vertical" >  
  
    <TextView  
        android:layout_width="fill_parent"  
        android:layout_height="wrap_content"  
        android:gravity="center"  
        android:text="正在切换状态...."  
        android:textSize="18sp"  
        android:textColor="@color/black" />  
  
    <TextView  
        android:layout_width="fill_parent"  
        android:layout_height="wrap_content"  
        android:gravity="center"  
        android:text="" />  
  
<ProgressBar  
    android:id="@+id/progressBar1"      
    style="@style/ProgressBar_Mini"  
    android:layout_width="290dp"  
    android:layout_height="17dp" />  
     
</LinearLayout>  
 
MyProgressBar.java的内容如下:
[java]  
package com.wl.util;  
  
import android.app.Dialog;  
import android.content.Context;  
import android.content.DialogInte易做图ce;  
import android.content.DialogInte易做图ce.OnCancelListener;  
import android.view.LayoutInflater;  
import android.view.View;  
import android.widget.ProgressBar;  
  
import com.wl.R;  
  
public class MyProgressBar {  
    Dialog dialog;  
    Context context;  
    // 声明ProgressBar对象  
    private ProgressBar pro1;  
      
  
    /** 
     * 构造 
     */  
    public MyProgressBar(Context context) {  
        // TODO Auto-generated constructor stub  
        this.context = context;  
        dialog = new Dialog(context, R.style.dialog);  
        dialog.setOnCancelListener(onCancelListener);  
    }  
补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,