Android編程設(shè)定activity進(jìn)入和退出效果的方法
本文實(shí)例講述了Android編程設(shè)定activity進(jìn)入和退出效果的方法。分享給大家供大家參考,具體如下:
看了android的源代碼和資源文件,終于明白如何去修改設(shè)置Dialog和Activity的進(jìn)入和退出效果了。設(shè)置Dialog首先通過(guò)getWindow()方法獲取它的窗口,然后通過(guò)getAttributes()方法獲得window的WindowManager.LayoutParams lp, lp有個(gè)公共屬性windowAnimations, 只要把要實(shí)現(xiàn)的animation的id賦值給它就可以了。問(wèn)題是這個(gè)animation應(yīng)該怎么寫呢,研究發(fā)現(xiàn),窗口進(jìn)入和退出的效果分別是通過(guò)@android:windowEnterAnimation和@android:windowExitAnimation兩個(gè)item設(shè)定的,比如進(jìn)入時(shí)的anim是@anim/dialog_enter, 退出的是@anim/dialog_exit, 則聲明一個(gè)style為:
<style name="mydialog"> <item name="@Android:windowEnterAnimation">@anim/dialog_enter</item> <item name="@android:windowExitAnimation">@anim/dialog_exit</item> </style>
然后把這個(gè)style的id傳給lp.windowAnimations就行了。
Activity的進(jìn)入和退出效果可以通過(guò)@android:activityOpenEnterAnimation,@android:activityOpenExitAnimation,@android:activityCloseEnterAnimation,@android:activityCloseExitAnimation這幾個(gè)item設(shè)定,第一個(gè)表示新的activity創(chuàng)建進(jìn)入效果,第2個(gè)表示activity還沒(méi)有finish()下退出效果,第3個(gè)表示上一個(gè)activity返回進(jìn)入效果,第4個(gè)表示的是activity finish()之后退出效果...(好似有點(diǎn)亂了)。具體設(shè)置參考如下:
<style name="myact"> <item name="@android:activityOpenEnterAnimation">@anim/act_enter</item> <item name="@android:activityOpenExitAnimation">@anim/act_exit</item> <item name="@android:activityCloseEnterAnimation">@anim/act_enter</item> <item name="@android:activityCloseExitAnimation">@anim/act_exit</item> </style> <style name="mytheme" parent="@android:style/Theme"> <item name="@android:windowAnimationStyle">@style/myact</item> </style>
然后把mytheme這個(gè)style作為Activity的theme就行了,還有一個(gè)辦法就是通過(guò)Acitvity獲取它的window, 然后和設(shè)置dialog一樣進(jìn)行設(shè)置,因?yàn)闅w根到底是設(shè)置Window的layoutparams里的windowAnimations值。所以Activity的進(jìn)入和退出效果也可以通過(guò)@android:windowEnterAnimation和@android:windowExitAnimation這兩個(gè)item設(shè)定。
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android開(kāi)發(fā)入門與進(jìn)階教程》、《Android資源操作技巧匯總》、《Android數(shù)據(jù)庫(kù)操作技巧總結(jié)》、《Android視圖View技巧總結(jié)》及《Android控件用法總結(jié)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
相關(guān)文章
Android 通過(guò)onDraw實(shí)現(xiàn)在View中繪圖操作的示例
以下是對(duì)Android通過(guò)onDraw實(shí)現(xiàn)在View中繪圖操作的示例代碼進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過(guò)來(lái)參考下2013-07-07
Android中Java根據(jù)文件頭獲取文件類型的方法
這篇文章主要介紹了Android中Java根據(jù)文件頭獲取文件類型的方法,涉及Android針對(duì)文件屬性的相關(guān)操作技巧,需要的朋友可以參考下2016-08-08
通過(guò)Html網(wǎng)頁(yè)調(diào)用本地安卓(android)app程序代碼
如何使用html網(wǎng)頁(yè)和本地app進(jìn)行傳遞數(shù)據(jù)呢?經(jīng)過(guò)研究,發(fā)現(xiàn)還是有方法的,總結(jié)了一下,大致有一下幾種方式2013-11-11
Android 8.0不能自動(dòng)安裝APK問(wèn)題的解決方法(完美適配)
這篇文章主要給大家介紹了關(guān)于Android 8.0不能自動(dòng)安裝APK問(wèn)題的解決方法(完美適配),這里的自動(dòng)安裝是指下載完成后,自動(dòng)彈出安裝界面,而不是靜默安裝APK,文中介紹的非常詳細(xì),需要的朋友可以參考下2018-07-07
Android倒計(jì)時(shí)神器(CountDownTimer)
這篇文章主要為大家詳細(xì)介紹了Android倒計(jì)時(shí)神器CountDownTimer,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-01-01
Android?IntentFilter的匹配規(guī)則示例詳解
這篇文章主要為大家介紹了Android?IntentFilter的匹配規(guī)則示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12
Android實(shí)現(xiàn)側(cè)滑只需一步
這篇文章主要介紹了Android實(shí)現(xiàn)側(cè)滑只需一步,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03

