有哪些建议的“路径”可以更好地在 Cocoa 中绘制代码?我认为在这一点上,这是我最大的弱点。绘制代码是通用的还是 Cocoa 特有的?
谢谢!- 杰森
有哪些建议的“路径”可以更好地在 Cocoa 中绘制代码?我认为在这一点上,这是我最大的弱点。绘制代码是通用的还是 Cocoa 特有的?
谢谢!- 杰森
最好的方法可能是练习。首先尝试绘制一些简单的东西:日历(基本上是网格)、自定义按钮或数字时钟。
还值得注意的是,许多“自定义”控件是由图像制成的,因此并没有太多的绘图是在代码中完成的——代码所做的唯一事情就是将这些图像拼接在一起。
你可能想看看Opacity,一个 OS X 的绘图应用程序(我不隶属于这些人,几天前才发现这个应用程序)。Opacity 与其他绘图应用程序的不同之处在于它可以直接从您的绘图中创建 Quartz 代码。当然,生成的代码并不完美,但在我尝试这个应用程序的几天里,我发现它对于理解如何更有效地使用 Quartz 非常有帮助。
无论您选择哪种 UI 工具包,都需要使用代码绘制来创建自定义控件。用代码绘制当然有它的优势,例如你正在构建的应用程序/框架在生产时真的很轻量级,因为会有很多资源(图像/字体/等)需要担心。
此外,如果出现问题,更改代码中的绘图比一起重做代码和图像要容易得多。
如果您正在做 Cocoa 绘图,请先查看 BGHudAppKit的源代码并阅读Apple 的 Cocoa 绘图指南。
我和你在同一条船上;我想了解有关绘图代码的更多信息。
这是一个很大的文档,但开发者网站上的Quartz 2D 编程指南似乎是一个不错的起点。他们介绍了图形上下文和路径,并包含大量图像。
该文档中还引用了一本书,使用 Quartz 编程:Mac OS X中的 2D 和 PDF 图形看起来不错。iPhone 和 OSX 的 API 几乎相同,因此使用 Mac OSX 书没有问题。
所以我建议从 Apple 文档开始(你不需要阅读 CGLayer 绘图部分),尝试一些示例代码并弄清楚它是如何工作的。然后继续阅读那本书或在网上找到更多示例代码。祝你好运!