83
人物
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