Android基礎:關於Dialog和Activity的style的深入理解


 <!-- 微博 -->
    <style name="weibosdk_ContentOverlay" parent="android:style/Theme.Dialog">
        <item name="android:windowNoTitle">true</item> 沒有標題
        <item name="android:windowIsTranslucent">true</item> 透明
        <item name="android:windowBackground">@color/weibosdk_transparent</item> 窗口背景色
        <item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item> 重要,Dialog進出的顯示動畫
        <item name="android:windowContentOverlay">@null</item> 是否有覆蓋
        <item name="android:backgroundDimEnabled">false</item> dialog的背景是否昏暗
    </style>

 以上是自定義Dialgog可以使用自定義樣式:

關於<item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item> 重要,Dialog進出的顯示動畫要特別注意,可以自定義Dialog進出的動畫,但是item的名字必須和下面的一樣,以確定Android系統能夠認識出來。

<style name="Animation.Translucent">
        <item name="windowEnterAnimation">@anim/translucent_enter</item>
        <item name="windowExitAnimation">@anim/translucent_exit</item>
    </style>

 ----------------------------------------------

Activity 自定義樣式:

   <style name="ThemeActivity">
        <item name="android:windowAnimationStyle">@style/AnimationActivity</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowFullscreen">true</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:windowIsTranslucent">true</item>
    </style>

 同樣的每個item對應的name不能變,以保證Android系統能夠辨認出來。

<style name="AnimationActivity" parent="@android:style/Animation.Activity">
        <item name="android:activityOpenEnterAnimation">@anim/slideinright</item> 第一次創建新Activity是調用的動畫
        <item name="android:activityCloseExitAnimation">@anim/slideoutright</item> 調用finish關閉該Activity是調用的動畫
        <item name="android:activityOpenExitAnimation">@anim/slideoutleft</item>   activity還沒有finish()下退出效果 
        <item name="android:activityCloseEnterAnimation">@anim/slideinleft</item>  上一個activity返回進入效果  

</style>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM