在我的自定义启动器应用程序中使用Android拖放框架

我正在尝试开发自定义启动程序的应用程序(无限数量的主页),我需要实现拖放和完成在Launcher2(安卓4.2)。

所以我find了两种方法

1) 拖放框架
2)使用android launcher2的方式就像实现DragController,DragSource一样在这里解释。

但是我很难理解为什么没有Android的人在他们自己的应用程序中不使用他们开发的拖放框架。 任何人都可以简要介绍一下他们的方法背后的可能的基本原理吗?(我的意思是记忆/performance)

提前致谢。

Solutions Collecting From Web of "在我的自定义启动器应用程序中使用Android拖放框架"

Android拖放框架与Launcher应用程序中使用的框架相比非常基本。

Launcher应用程序有大量的“图层”,并拖放到这些图层上,即DragLayer,工作区和所有应用程序视图等。它使用窗口标志,并在拖动时dynamic添加/删除视图到DragLayer进展和众多的活动监测拖动。 有关更多详细信息,请参阅DragLayer.java和Workspace.java文件。

在Android启动器中的拖放是在同一个ViewGroup中和同一个窗口中的Overlay绘图。 但是,Android拖放方法完全创build了一个单独的窗口types。

资源和内存明智的标准的Android拖放方法是昂贵的。

如果性能非常关键我的build议是按照Android启动的方式去其他喜欢标准的Android方法它简单和容易。

拖放框架是sice api 11.我的猜测是,在这之前写了很多启动程序的代码,没有人有时间重构它。 但是API的工作方式与第二种方法类似。

http://javapapers.com/android/android-drag-and-drop/ 。 这是最好的拖放示例,因为我已经在我的应用程序中执行了相同的操作。 注意:它将支持只有11以上的版本。拖放function将不支持版本10.相反,你必须通过设置X和Y位置以绝对布局移动字段。 但绝对布局完全不赞成…

如果您的应用程序不是那么复杂,您应该使用WindowManaager来控制拖放。 这很容易实施和职位改变工作。 得到代码在这里