很多时候我们会根据需求的不同,将Activity定义为Dialog样式,最简单的方式是更改Android项目的Manifest文件,在所要更改的Activity标签中添加:android:theme="@android:style/Theme.Dialog"。但这种设置效果是非常差的。如下为更加友好化的设置:
1.在Android项目的styles.xml文件中添加style标签(可根据不同需求来添加不同的item):
<style name="Theme.FloatActivity" parent="android:style/Theme.Dialog"> <!-- float_box为我们定义的窗口背景 ,这个不是必须的--> <item name="android:windowBackground">@drawable/float_box</item> <!--去掉自定义Theme.dialog的上边框--> <item name="android:windowNoTitle">true</item> </style>
2.在drawable文件夹下创建float_box.xml文件来设置背景样式(可更具需求设置多样化样式):
<shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#ffffff" /> <!--<stroke android:width="3dp" android:color="#ff000000" />--> <corners android:radius="1dp" /> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" /> </shape>
3.于Manifest文件中在要更改的Activity标签添加:
android:theme="@style/Theme.FloatActivity"