基于 TouchVG 构建矢量绘图应用。
-
新建 Android 程序项目。
- SDK 最小版本选 API 16 以上(避免自动创建的 appcompat_v7 项目出现资源缺失错误),完成后可改回低版本(使用 TouchVG 要求最低 API 12)。
- 在创建 Activity 页面选择默认的简单布局 Blank Activity。
-
在主页面布局中添加一个 FrameLayout,将用作绘图区的容器。
- 指定 ID 为
container
,下面就可通过findViewById(R.id.drawframe)
找到此布局。 - 使用 FrameLayout 而不是其他布局类型做绘图视图容器,是避免触摸绘图引起其他相邻视图联锁刷新。
- 指定 ID 为
-
添加 TouchVG 引用。
- 下载预编译的TouchVG包,将 touchvg.jar 和 libtouchvg.so 复制到 libs 下。
-
在 MainActivity.java 中创建绘图视图。
-
定义 IViewHelper 对象,在 onCreate 中创建绘图视图。
public class MainActivity extends Activity { private IViewHelper mHelper = ViewFactory.createHelper();
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mHelper.createGraphView(this, (ViewGroup) this.findViewById(R.id.container)); mHelper.setCommand("splines"); }
- 在 `createGraphView` 下一行的 `setCommand` 激活随手画命令。`splines` 是命令名,更多命令名见[在线文档][cmdnames]。
-
-
运行程序,动画画画吧。
我使用的是开发环境是:
- Mac OS X 10.10
- ADT Bundle v23.0.2: adt-bundle-mac-x86_64-20140702