閱讀83 返回首頁    go 人物


Android對話框的自定義及透明效果

著手點在於Dialog,如要透明效果,則需要使用自定義的style,去除背景圖片。參照代碼

    <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>

如需要使用自定義的界麵,則需要用戶自定義layout,參照代碼progress_dialog.xml

<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:androhttps://schemas.android.com/apk/res/android" >https://schemas.android.com/apk/res/android"  
    android:orientation="horizontal"  
    android:gravity="center"  
    android:layout_width="wrap_content"  
    android:layout_height="wrap_content" >  
    
    <ProgressBar android:          
     android:layout_width="wrap_content"         
     android:layout_height="wrap_content"  
        android:layout_gravity="center"  
          
        android:layout_centerVertical="true" />  
</RelativeLayout> 

實例代碼是為了顯示一個終端自帶的loading效果,背景為透明(ProgressBar)

  progressDialog = new Dialog(context, R.style.progress_dialog);   
  progressDialog.setContentView(R.layout.progress_dialog);   
  progressDialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);   
  progressDialog.show();

 

該文章隻是起一個引導作用,讓開發者知道該如何著手創建自定義的對話框,當然實現的方式還有其他的。

最後更新:2017-04-02 22:16:33

  上一篇:go android中透明Dialog及ProgressDialog的實現
  下一篇:go 友善之臂Mini6410之Android開發學習筆記(2)-PWM Demo