哪个框架可用于在 Android 上绘制复杂的交互式 UI 层次结构? (就像 iOS 上的 CoreAnimation)
Which Framework can be used to draw a complex, interactive UI hierarchy on Android? (Like CoreAnimation on iOS)
我正在将矢量图形编辑器从 iOS 移植到 Android。应用程序必须以高效的方式绘制复杂的图形对象层次结构,以便可以使用手势实时编辑图形。编辑后的作品通常由图像、文本和图形基元(线条、圆圈等)组成。 UI 选择高亮等元素在顶部的单独图层上呈现。
在 iOS 应用程序中,如果图形的一个组件发生变化(例如,一个小文本元素更改了其内容),则只会重新呈现该文本元素。
在 iOS 上,我们使用来自 CoreAnimation
框架的 CALayer
对象。这很好用。对于这个用例,可以在 Android 上使用什么框架?是否有既定的 "native" 方法来做到这一点,或者通常使用第三方框架?
Android 没有开箱即用的类似东西。我们确实有 core.animation but it is limited to simple behavioral animations. To create what you want you need to use SurfaceView
or GLSurfaceView
and help of clean OpenGL
. You may also try to use ordinary Canvas
个 View
- 不过你的可能性有限。
还有 OpenGl
和 SurfaceView
的包装器,例如 libgdx
,但它主要用于游戏 - 所以它具有比您需要的更广泛的可能性,但它不那么复杂比 OpenGl
.
希望对您有所帮助。
我正在将矢量图形编辑器从 iOS 移植到 Android。应用程序必须以高效的方式绘制复杂的图形对象层次结构,以便可以使用手势实时编辑图形。编辑后的作品通常由图像、文本和图形基元(线条、圆圈等)组成。 UI 选择高亮等元素在顶部的单独图层上呈现。
在 iOS 应用程序中,如果图形的一个组件发生变化(例如,一个小文本元素更改了其内容),则只会重新呈现该文本元素。
在 iOS 上,我们使用来自 CoreAnimation
框架的 CALayer
对象。这很好用。对于这个用例,可以在 Android 上使用什么框架?是否有既定的 "native" 方法来做到这一点,或者通常使用第三方框架?
Android 没有开箱即用的类似东西。我们确实有 core.animation but it is limited to simple behavioral animations. To create what you want you need to use SurfaceView
or GLSurfaceView
and help of clean OpenGL
. You may also try to use ordinary Canvas
个 View
- 不过你的可能性有限。
还有 OpenGl
和 SurfaceView
的包装器,例如 libgdx
,但它主要用于游戏 - 所以它具有比您需要的更广泛的可能性,但它不那么复杂比 OpenGl
.
希望对您有所帮助。