dialog加載動畫實例

1,DialogLoadingUtil 類

public class DialogLoadingUtil {
private Context context;
public DialogLoadingUtil(Context context){
this.context=context;
}
@SuppressLint("NewApi")
public  Dialog showDialog(){
Dialog dialog=new Dialog(context);
dialog = new Dialog(context, R.style.loading); 
View view=View.inflate(context, R.layout.loadinglayout, null);
ImageView iv_anim=(ImageView) view.findViewById(R.id.iv_anim);
iv_anim.setBackgroundResource(R.drawable.loading);
AnimationDrawable animationDrawable = (AnimationDrawable) iv_anim.getBackground();
animationDrawable.start();
dialog.setContentView(view);//此處佈局爲一個progressbar  
        dialog.setCancelable(true); // 可以取消  
        dialog.show();  
//        WindowManager.LayoutParams params = dialog.getWindow().getAttributes();  
//        params.height = -1;  
//        params.width = -1;  
//        params.format=1;  
//        params.flags = LayoutParams.FLAG_FULLSCREEN | LayoutParams.FLAG_LAYOUT_IN_SCREEN;  
//        dialog.getWindow().setAttributes(params);  
return dialog;
}

2,loading

<style name="loading">
        <item name="android:layout_width">fill_parent</item>
        <item name="android:layout_height">fill_parent</item>
        <item name="android:windowFullscreen">true</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:backgroundDimEnabled">false</item> <!-- 模糊 -->
        <item name="android:windowIsFloating">true</item> <!-- 類似windows的彈出Dialog -->
        <item name="android:windowContentOverlay">@null</item> <!-- 不要頭部陰影 -->
        <item name="android:windowBackground">@android:color/transparent</item> <!-- 背景顏色設置透明 -->
    </style>

3,loadinglayout

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center" >


  <!--   <ProgressBar
        android:id="@+id/loadingbar"
        style="@style/loadingStyle"
        android:layout_width="199dp"
        android:layout_height="180dp"
        android:layout_gravity="center"
         >
    </ProgressBar> -->
<ImageView 
   android:id="@+id/iv_anim"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_gravity="center"
   />
<TextView 
android:layout_width="wrap_content"
android:layout_height="wrap_content"    
android:textSize="14dp"
   android:text="加載中..."
   />
</LinearLayout>

4,drawable的loading

<?xml version="1.0" encoding="UTF-8"?>    
<animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android">    
  
    <item android:duration="150" android:drawable="@drawable/anim1_1" />   
    <item android:duration="150" android:drawable="@drawable/anim1_2" />   
    <item android:duration="150" android:drawable="@drawable/anim1_3" />   
    <item android:duration="150" android:drawable="@drawable/anim1_4" />   
    <item android:duration="150" android:drawable="@drawable/anim1_5" />   
    <item android:duration="150" android:drawable="@drawable/anim1_6" />   
      
</animation-list>   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章