Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> 在Android中實現360手機衛士懸浮窗效果

在Android中實現360手機衛士懸浮窗效果

編輯:Android開發教程

大家好,今天給大家帶來一個仿360手機衛士懸浮窗效果的教程,在開始之前請允許我說幾句不相干的廢 話。

不知不覺我發現自己接觸Android已有近三個年頭了,期間各種的成長少不了各位高手的幫助, 總是有很多高手喜歡把自己的經驗寫在網上,供大家來學習,我也是從中受惠了很多,在此我深表感謝。可 是我發現我卻從來沒有將自己平時的一些心得拿出來與大家分享,共同學習,太沒有奉獻精神了。於是我痛 定思痛,決定從今天開始寫博客,希望可以指點在我後面的開發者,更快地進入Android開發者的行列當中。

好了,廢話就說這麼多,下面開始進入今天的主題吧。

360手機衛士我相信大家都知道,好多 人手機上都會裝這一款軟件,那麼我們對它的一個桌面懸浮窗效果想必都不會陌生。請看下圖:

首先 是一個小的懸浮窗顯示的是當前使用了百分之多少的內存,點擊一下小懸浮窗,就會彈出一個大的懸浮窗, 可以一鍵加速。好,我們現在就來模擬實現一下類似的效果。

先談一下基本的實現原理,這種桌面懸 浮窗的效果很類似與Widget,但是它比Widget要靈活的多。主要是通過WindowManager這個類來實現的,調用 這個類的addView方法用於添加一個懸浮窗,updateViewLayout方法用於更新懸浮窗的參數,removeView用於 移除懸浮窗。其中懸浮窗的參數有必要詳細說明一下。

WindowManager.LayoutParams這個類用於提供 懸浮窗所需的參數,其中有幾個經常會用到的變量:

type值用於確定懸浮窗的類型,一般設為2002, 表示在所有應用程序之上,但在狀態欄之下。

flags值用於確定懸浮窗的行為,比如說不可聚焦,非 模態對話框等等,屬性非常多,大家可以查看文檔。

gravity值用於確定懸浮窗的對齊方式,一般設為左 上角對齊,這樣當拖動懸浮窗的時候方便計算坐標。

x值用於確定懸浮窗的位置,如果要橫向移動懸 浮窗,就需要改變這個值。

y值用於確定懸浮窗的位置,如果要縱向移動懸浮窗,就需要改變這個值 。

width值用於指定懸浮窗的寬度。

height值用於指定懸浮窗的高度。

創建懸浮窗這 種窗體需要向用戶申請權限才可以的,因此還需要在AndroidManifest.xml中加入<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved