2015已经来了快半月了,始终还是没感受到一点新年的气氛,但是终归是还没过年这对于我们来说好像也确实正常。
目前来说自我感觉还是沉浸在年末的那种气氛中,那就暂且年末吧。年末因为部分原因再次需要接触Launcher的代码了,记得14年最开始的时候就看过一部分Launcher2的代码,现在重新回头来看却发现感触颇多,竟然不知不觉忘掉了很多,也在看了许久之后又有点重新认识的感觉。
回归正题,此次不仅仅是要修改launcher2的源码部分,还要加一点自己的东西,因为还是依托于原生的launcher2的原因,只是想在固有launcher2的UI架构上增加一点自己的东西,关于launcher2的UI架构部分,我也就啰嗦下再次重温下,毕竟之前应该是没有记录过的。
首先最直观的是UI界面部分的大概分类。简单截张图算是凑合看看
之所以我区分为三个区域也是出于这三个部分已经占据了UI布局的大部分,分别是从左到右 搜索框/删除框所占区域,应用图标/窗口小部件所占区域,快捷功能键所占区域。如果按布局文件launcher.xml区分就得更为细致了。在此可以借鉴下网友解析的代码段
<com.android.launcher2.DragLayer
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
android:id="@+id/drag_layer"
...
>
<!-- Keep these behind the workspace so that they are not visible when
we go into AllApps -->
<include
android:id="@+id/dock_divider"
layout="@lay