android2.3 api demo 学习系列(16)--App/Activity/Translucent and Blur activity

本次同样是将apidemo中得两个demo合并起来学习:Translucent and Translucent Blur

Translucent 展示的是对activity透明的处理 

Translucent Blur不同之处是activity后面的信息会模糊化处理

 

1、Translucent 的处理主要是style和Theme来实现

 

//manifest中定义activity的主题
 <activity android:name=".app.activity.TranslucentActivity"
                android:label="@string/app_activity_translucent_lable"
                android:theme="@style/Theme.Translucent">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="com.angie.apidemos.SAMPLE_CODE" />
            </intent-filter>
        </activity>
//values style中定义主题
<style name="Theme.Translucent" parent="android:style/Theme.Translucent">
        <item name="android:windowBackground">@drawable/translucent_background</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:colorForeground">#fff</item>
    </style>
//主题引用的背景在values color中定义
<drawable name="translucent_background">#a0000000</drawable>
#a0控制透明度

 2、Translucent Blur的处理和Translucent的区别在于 onCreate方法中设置了flag

 

 getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND);

 上图:

Translucent 

android2.3 api demo 学习系列(16)--App/Activity/Translucent and Blur activity

Translucent Blur


android2.3 api demo 学习系列(16)--App/Activity/Translucent and Blur activity

你可能感兴趣的:(android,api,demo)