通过修改default_workspace.xml实现定制屏幕图表默认排列

本方法测试于android4.4源码,但不仅限于android4.4,请自行测试。


在默认启用的launcher下搜索default_workspace.xml文件中加入默认要放置的普通的应用程序。加入的格式为:

           //放置y方向的位置(在行中的位置)

其中应用的pachageName和activity是我们需要的,很多种方法都可以获取这个信息,我们可以通过logcat截取log的方式获取。打开eclipse中的logcat并添加一个Filter,在"by log message"中填写"cmp"。连接设备,在logcat清空LOG之后,打开该应用,获取第一条过滤出的log。

例如:

设置

06-28 03:44:13.015: I/ActivityManager(505): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.android.settings/.Settings bnds=[371,521][499,611]} from pid 775

launcher:packageName="com.android.settings"

launcher:className="com.android.settings.Settings"

图库

06-28 03:44:41.425: I/ActivityManager(505): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.android.gallery3d/.app.Gallery bnds=[218,521][346,611]} from pid 775

launcher:packageName="com.android.gallery3d"
launcher:className="com.android.gallery3d.app.GalleryActivity"

相机

06-28 03:44:57.495: I/ActivityManager(505): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.android.gallery3d/com.android.camera.CameraLauncher bnds=[524,521][652,611]} from pid 775

launcher:packageName="com.android.gallery3d"

launcher:className="com.android.camera.CameraLauncher"

对于布局:

(0,0)

(1,0)

(2,0)

(3,0)

(4,0)

(0,1)

(1,1)

(2,1)

(3,1)

(4,1)

(0,2)

(1,2)

(2,2)

(3,2)

(4,2)

如果添加widget

       //在y方向上所占格数

例如,要在第3屏的第一行第二列放置开始放置一个x方向上占两个单位格,y方向上占两个单位格的时钟,可以加入以下代码:

 

改变主界面的排列方式

要修改桌面的排列方式,如下,先根据横竖屏设置修改workspace_screen.xml里shortAxisCells和longAxisCells的参数,然后在Launcher.java中修改NUMBER_CELLS_X和NUMBER_CELLS_Y的值,在2.3版本中刚开始往数据库中添加item的时候会去判断,如果不修改NUMBER_CELLS_X和NUMBER_CELLS_Y的话会导致一部分的item显示不出来,导致预制apk的失败。


添加worksapce上的屏数

要增加屏数,首先在根据横竖屏在launcher.xml中的,然后在Launcher.java中修改SCREEN_COUNT的值即可。

你可能感兴趣的:(android)