使用awt与android

tom*_*omd 19 graphics android awt

我有一个绘制图表的Java Swing应用程序.它使用Graphics2D调用和awt对象,如Rectangle等.

在某些时候,我可能想把它移植到Android.我知道我不能在Android上使用Graphics2D,但我仍然可以使用awt Rectangle,Font,Color(etc)类.

我想要做的是通过添加仿真层来隔离swing版本和Android版本之间的任何代码更改,以便我的Graphics2D调用可以转换为Android绘图调用.

这可行吗?

为了清楚起见,我并不太担心Swing UI方面(UI很小,可以为Android重写),我担心从很多地方调用Graphics2D的实际绘图代码.

Col*_*ert 9

主要问题是您将无法在名为的包中创建类java.awt.但除此之外,基本上你可以基于awt API重写库.

你也可以检查awt-android-compat项目.

  • awt-android-compat很遗憾是GNU,而我的是一个商业项目. (4认同)
  • @tomd:“只是澄清一下,你是说我将无法使用现有的 awt 类,即使是 Rectangle 之类的东西?有什么问题吗?” - 它们在 Android 上不存在。但是,对于不尝试在屏幕上绘制的实用程序类,您可以从 Apache Harmony 项目中获取这些类的源代码,将它们重构为一个新包(例如,`tomd.awt`),然后使用它们。 (2认同)