首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS上的工程视图

iOS上的工程视图
EN

Stack Overflow用户
提问于 2010-09-04 12:21:50
回答 1查看 1.7K关注 0票数 2

我如何实现一个视图,让用户可以在其中进行绘图(特别是签名)?我更喜欢一个库或示例代码,而不是自己实现它。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-09-07 02:29:41

绘制一条曲线只是一系列实心圆或小直线。一种差异化。

  1. 跟踪用户以前和当前的接触点。(UITouch)
  2. Just画一条连接点的线。(或者绘制你想要的任何形状,只需填充空白)

基础知识

有一系列跟踪触摸的方法。

代码语言:javascript
复制
– touchesMoved:withEvent:
– touchesEnded:withEvent:
– touchesCancelled:withEvent:

这些方法在UIView上。(方法本身在UIResponder中定义,它是它的超类)覆盖它们。在大多数情况下,跟踪触摸点不是问题。

并向UIView本身发送setNeedsDisplay消息,使其使其图形状态无效,这样它很快就会重新绘制自己。

覆盖UIViewdrawRect方法以使用Quartz (CGContext)绘制所需的内容(如黑盘)。您可以存储跟踪的接触点,以绘制每条线。基本上,你必须重新绘制所有的触摸轨迹。

Optimization

  • 您可以将绘制的图像缓存为位图(CGImage,可检索UIImage)。所以你只需要绘制新添加的接触点。
  • 你可以通过设置位图的绘制上下文来直接在位图上绘制。
  • 你可以使用OpenGL ES纹理绘图。这是最快的,但也是最难的。并且需要完全不同的方法来提高性能。

更详细的信息和示例在我提到的方法/类的引用中。我附加了一个链接:http://developer.apple.com/iphone/library/navigation/index.html#section=Topics&topic=Graphics%20%26amp%3B%20Animation

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3640895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档