Launcher是Android的應用程序啓動器,Launcher的功能 還包含:桌面的切換、應用程序快捷 (shortcut)功能、背景圖(Wallpaper)功能等等。在Android的桌面最下方,有一個圖示,按下後可以拉出應用程序圖示清單,這是Launcher提供的功能。
我們這個實例是用GridView來實現Launcher效果的, 下面的截屏顯示本實例的效果圖:
源代碼如下:
main.xml佈局文件,只有一個GridView:
GridView的每一個Item也需要一個佈局文件,用來定義應用的圖標與標題,application_layout.xml:
主程序文件,Launcher.java:
幾點說明:
- 函數setupViews()是建立Launcher桌面的Views的。setupViews裏面的函數bindAllApps()是把Activity裏面所有符合特定Intent的結果查出來,結果封裝在ResolveInfo的List裏面。可以通過ResolveInfo獲取到應用的圖標及標籤。
- 包android.content.pm所含的類負責獲取應用程序包的信息,包括關於activities,permissions,services,signatures和providers的信息。