透明背景对话框

推荐安卓开发神器(里面有各种UI特效和android代码库实例)

笔者在Android应用开发中需要通过一个对话框的Activity来显示一幅图片,但是要求对话框背景为透明,即从用户角度来看,如果图片是一个五角星(图片其他地方为透明色),则通过透明背景的对话框显示此图片,屏幕上仿佛只出现了一个五角星。经过查询资料,笔者终于找到一个实现的方法,即为显示图片的Activity创建一个对话框风格的透明主题。具体如下。

 

1. res/values下创建两个xml文件,一个为主体风格资源styles.xml一个为颜色资源colors.xml

styles.xml :

 

<?xml version="1.0" encoding="utf-8"?>

<resources>

   <style name = "translucent" parent = "@android:style/Theme.Dialog">

 <item name = "android:windowBackground">@color/translucent_background</item>

    <item name = "android:windowIsTranslucent">true</item>

    <item name = "android:windowNoTitle">true</item>

    <item name ="android:windowAnimationStyle">@android:style/Animation.Translucent</item>

</style>

</resources>

colors.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <color name = "translucent_background">#00000000</color>

</resources>

2. AndroidManifest.xmlActivity指定自定义的主题

<activity android:name = “.copyright” android:theme = “@style/translucent” />

 

3. 在显示图片的activity布局文件中加入图片资源(设置layout的背景或者增加一个ImageView显示图片)

4.Activity java文件copyright.java中关联布局文件,然后运行Android工程到此activity.

相关推荐