Android Launcher研究(二)-----------Launcher为何物,究竟是干什么的?

Launcher俗称HomeScreen,也就是我们启动Android手机,第一眼看到的应用程序,而这个应用程序是比较特殊而且任务艰巨的。

它负责了我们除了应用本身操作以外的所有操作,它负责了我们有几个桌面,点击应用图标启动应用程序,长时间按桌面出现上下文菜单,

长时间按桌面的图标出现垃圾箱,拖动应用图标重新定位等等,一系列的操作。我将截些图让大家更容易理解!

Android Launcher研究(二)-----------Launcher为何物,究竟是干什么的?_第1张图片    

图1:开机画面,Laucher的主界面                 图2:打开抽屉,列出所有我们的所安装应用

 

图三:长按图标,抽屉变成垃圾箱了                        图四:手指向左滑动进入另一个桌面

我就先截这几个图让大家感受感受,图2中我们列出的所有应用并不包括诸如:Launcher,Widget等应用,是因为我们我们列出的应用仅仅是在AndroidManifest.xml配置文件有这样标记的应用(如下代码:)

view plain copy to clipboard print ?
  1. <activity android:name=".HomeStyle"  
  2.               android:theme="@android:style/Theme.NoTitleBar"  
  3.                android:label="@string/app_name">  
  4.          <intent-filter>  
  5.              <action android:name="android.intent.action.MAIN" />  
  6.              <category android:name="android.intent.category.LAUNCHER" />  
  7.          </intent-filter>  
  8.      </activity>  
<activity android:name=".HomeStyle" android:theme="@android:style/Theme.NoTitleBar" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>

 其中第5,6行是关键,有了这两句,你的应用程序才会被列出,而Launcher特殊就是这个应用中唯一一个Activity是这样申明的,如下代码:

view plain copy to clipboard print ?
  1. <activity  
  2.     android:name="Launcher"  
  3.     android:launchMode="singleTask"  
  4.     android:clearTaskOnLaunch="true"  
  5.     android:stateNotNeeded="true"  
  6.     android:theme="@android:style/Theme.Wallpaper.NoTitleBar"  
  7.     android:screenOrientation="nosensor"  
  8.     android:windowSoftInputMode="stateUnspecified|adjustPan">  
  9.     <intent-filter>  
  10.         <action android:name="android.intent.action.MAIN" />  
  11.         <category android:name="android.intent.category.HOME"/>  
  12.         <category android:name="android.intent.category.DEFAULT" />  
  13.         <category android:name="android.intent.category.MONKEY" />  
  14.     </intent-filter>  
  15. </activity>  
<activity android:name="Launcher" android:launchMode="singleTask" android:clearTaskOnLaunch="true" android:stateNotNeeded="true" android:theme="@android:style/Theme.Wallpaper.NoTitleBar" android:screenOrientation="nosensor" android:windowSoftInputMode="stateUnspecified|adjustPan"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.HOME"/> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.MONKEY" /> </intent-filter> </activity>

这里第11行起了作用了,大家看出来Launcher与普通应用程序的区别了吗,变成Home的时候,当我们重新安装一个Launcher的时候,我们按一下手机的HOME键会出现Launcher列表如下图:

   

图5:Launcher列表                                             图6:传说中的Launcher2

你可能感兴趣的:(android,移动开发,职场,休闲)