Android开发:为launcher添加一个仿Mac的Dock(附源码

之前在网上看到有篇文章:Launcher之Dock细节篇 它实现了一个仿Mac的dock。感觉蛮有意思的,所以就照着仿制了一个。

可以动态的添加快捷方式,默认包含AllApp按钮,图标居中显示。

DockBar上的图标可以相互交换位置,并且将图标拖拽出去。

Android开发:为launcher添加一个仿Mac的Dock(附源码

拖拽释放后:

Android开发:为launcher添加一个仿Mac的Dock(附源码

文章后边附带的源码是基于Android2.2自带的launcher2稍作修改而成,使用eclipse调试。

一、首先要在Launcher的setupViews函数里面初始化自己的layout(需增加3个地方)

1.             dockbar=(DockBar)dragLayer.findViewById(R.id.dockbar);      dockbar.setLauncher(this);       dockbar.setDragController(dragController);            2.      dragController.setDragScoller(workspace);      dragController.setDragListener(deleteZone);      dragController.setDockDragListener(dockbar); // hmg25 add for dock              setDockDragListener为自定义函数,添加在DragController的startDrag中,具体见源码      if(mDockListener!=null){               mDockListener.onDragStart(source, dragInfo, dragAction);               }                   3.      // The order here is bottom to top.       dragController.addDropTarget(workspace);      dragController.addDropTarget(dockbar);    //hmg25 add for dock       dragController.addDropTarget(deleteZone);  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwwdwx.html