首页 > 代码库 > Android 将Activity以对话框(Dialog)形式显示

Android 将Activity以对话框(Dialog)形式显示

1、将MainActivity以对话框的形式显示,首先在AndroidManifest.xml 文件中,申明 activity 的主题使用自定义对话框样式。

<activity

android:name=".MainActivity" 

android:label="@string/activity_custom_dialog" 

android:theme="@style/Theme.CustomDialog">  
            <intent-filter>  
                <action android:name="android.intent.action.MAIN" />  
                <category android:name="android.intent.category.SAMPLE_CODE" />  
            </intent-filter>  
</activity>  
2、res/values/styles.xml 样式文件中定义一个对话框主题样式,这里继承了 android:style/Theme.Dialog 主题,  
   
并且窗口样式 android:windowBackground 引用了 @drawable/filled_box  
   
<style name="Theme.CustomDialog" parent="android:style/Theme.Dialog">  
    <item name="android:windowBackground">@drawable/filled_box</item>  
</style>  
3、res/drawable/filled_box.xml 定义了 Shape 类型的 drawable(抽象的可画区域),最终是通过这个来实现新对话框的样式。  
<shape xmlns:android="http://schemas.android.com/apk/res/android">  
    <solid android:color="#f0600000"/>  
    <stroke android:width="3dp" color="#ffff8080"/>  
    <corners android:radius="3dp" />  
    <padding android:left="10dp" android:top="10dp" 
        android:right="10dp" android:bottom="10dp" />  
</shape>

Android 将Activity以对话框(Dialog)形式显示