Android輕鬆搞定Dialog提示動畫效果
抽箇中午的時間寫一篇部落格,想必大家現在正在午飯呢吧,深圳的天氣真是變換無常,剛剛大雨傾盆,不一會就晴天高照。打球嗎?約起來哇,哈哈。。
今天給大家帶來一篇Dialog提示附加動畫效果的功能。這種Dialog提示效果基本變成了每個App都必不可少功能。例如,退出提示,彈出分享框,App升級提示等等。。
其實在Android中實現提示功能由很多種方式:自定義Dialog,AlertDialog,自定義ViewGroup,DialogFragment等等。
Google在新版本中不推薦使用Dialog了(Dialog的坑不少,例如搶奪焦點,必須自己處理返回事件等等),本篇內容實現的功能基於Android3.0之後推出的DialogFragment。
關於DialogFragment的使用在這裡就不做多的介紹了,入門的文章大家可以看hongyang的:
Android 官方推薦 : DialogFragment 建立對話方塊
首先,看下我們今天要實現的效果:想必大家肯定見過這種類似的效果吧。哈哈,怎麼樣?是不是比普通的Dialog顯示要nice狠多。下面我們就來一步步實現。
既然使用DialogFragment,那麼我們就需要自定義先DialogFragment,並繼承自DialogFragment,實現onCreateView方法或者onCreateDialog。這裡我們實現的是onCreateView方法。下面來看核心的程式碼:
DialogFragment和Fragment有相同的生命週期:
(1)在onStart方法中我們首先去宣告要載入的動畫檔案,並設定到window的windowAnimations屬性上。
(2)在onCreateView方法中,去掉了預設的提示框背景色(設定為透明),並去掉預設的標題,然後載入我們自己的佈局檔案。
接著我們來看動畫Style:
很簡單,就是定義了顯示和退出的動畫。
到此為止,關於動畫的設定就完成了。接著我們就可以顯示DiaFragment了:
到此,我們就輕鬆實現了上面的效果啦。關於定義的動畫anim,大家可以下載原始碼進行檢視,這裡就不多說了。
注:有朋友說在提示Dialog顯示的時候,如何去掉預設的暗黑色背景。其實很簡單,在上面的onStart方法中,使用如下方式:
layoutParams.dimAmount = 0.0f;
好了,今天的內容就到這裡啦,有問題的朋友留言,打球去啦!
相關文章
- 3D 穿梭效果?使用 CSS 輕鬆搞定3DCSS
- 【動畫】看動畫輕鬆理解「Trie樹」動畫
- 輕鬆搞定專案流程自動化
- 看動畫輕鬆理解「 堆 」動畫
- Wondershare Filmora影片疊加教程-輕鬆製作畫中畫效果
- anime.js 網頁動畫庫,輕鬆實現網頁數字滾動效果JS網頁動畫
- 如何輕鬆搞定光纖熔接
- 高逼格Android轉場動畫,輕鬆實現掘金使用者頭像轉場動畫Android動畫
- 【輕鬆一刻】Java製作字元動畫Java字元動畫
- 超酷炫的轉場動畫?CSS 輕鬆拿下!動畫CSS
- 看動畫輕鬆學會 Raft 演算法動畫Raft演算法
- 好看的Dialog載入動畫動畫
- Apache Storm系列 之二( 輕鬆搞定 Storm 安裝與啟動)ApacheORM
- Vue資料驅動表單渲染,輕鬆搞定form表單VueORM
- 學會這些linux的“自動化”輕鬆搞定任務Linux
- 看動畫輕鬆理解「遞迴」與「動態規劃」動畫遞迴動態規劃
- MySQL8.0輕鬆搞定GTID組複製MySql
- Jenkins部署安裝,輕鬆三步搞定Jenkins
- 看動畫輕鬆理解時間複雜度(一)動畫時間複雜度
- 看動畫輕鬆理解時間複雜度(二)動畫時間複雜度
- WPF中輕鬆操控GIF動畫:WpfAnimatedGif庫詳解動畫
- 直播平臺原始碼,Android中常用Dialog彈窗效果原始碼Android
- Android SeekBar 自定義thumb,thumb旋轉動畫效果Android動畫
- 上億條資料,OurwayBI也能輕鬆搞定
- 一份配置,輕鬆搞定Vue表單渲染Vue
- 輕鬆搞定專案管理軟體、分配任務專案管理
- 一文輕鬆搞定 tarjan 演算法(二)演算法
- MySQL8.0輕鬆搞定GTID主從複製MySql
- MySQL8.0輕鬆搞定GTID主主複製MySql
- 【Android 動畫】動畫詳解之仿微信檢視大圖效果(四)Android動畫
- Autodesk 3ds Max(3dmax 2023):輕鬆製作精美的3D影像和動畫效果3D動畫
- Android懸浮窗怎麼簡單實現?這樣用 kotlin編寫輕鬆搞定!AndroidKotlin
- jQuery 效果 – 動畫jQuery動畫
- 影片建立動畫GIFGIF‘ted for Mac,輕鬆製作各種小動圖動畫Mac
- 一文輕鬆搞定批處理框架 Spring Batch框架SpringBAT
- 如何使用MindStudio輕鬆搞定大模型全流程開發大模型
- 輕鬆搞定分組報表中的各種排序排序
- Folder Tidy輕鬆搞定,檔案不再雜亂難整理
- 搞定動畫之 JQuery 中的自定義動畫動畫jQuery