更好地为Cocoa绘制代码?

时间:2010-04-24 05:16:35

标签: iphone objective-c cocoa uikit appkit

为了更好地在Cocoa中绘制代码,有哪些建议的“路径”?我想在这一点上,这是我最大的弱点。是在代码中绘制一般的,还是特定于Cocoa的?

谢谢! - 杰森

4 个答案:

答案 0 :(得分:7)

最好的方法可能就是练习。首先尝试绘制一些简单的东西:日历(基本上是网格),自定义按钮或数字时钟。

还值得注意的是,许多“自定义”控件都是由图像构成的,所以 大部分绘图都是在代码中完成的 - 代码唯一能做的就是拼接这些图像一起。

答案 1 :(得分:2)

你可能想看一下Opacity,一个OS X的绘图应用程序(我不是这些人的附属,几天前刚刚发现了这个应用程序)。 Opacity与其他绘图应用程序的区别在于它可以直接从您的绘图创建Quartz代码。当然,生成的代码并不完美,但在我试用这个应用程序的几天内,我发现它对于理解如何更有效地使用Quartz非常有帮助。

答案 2 :(得分:0)

无论您选择哪种UI工具包,都需要创建自定义控件。在代码中绘图肯定有它的优点,例如你正在构建的应用程序/框架非常轻量级的生产时间,因为会有很多让资源(图像/字体/等)担心。

此外,如果出现问题,更改代码绘制比重做代码和图像要容易得多。

如果您正在查看Cocoa绘图,请查看BGHudAppKit的源代码并阅读Cocoa Drawing Guide by Apple

答案 3 :(得分:0)

我和你在同一条船上;我想了解更多有关绘图代码的信息。

这是一份大文档,但开发者网站上的Quartz 2D programming guide似乎是一个很好的起点。他们介绍Graphics ContextsPaths并包含大量图片。

该文件中还引用了一本书,Programming With Quartz: 2D and PDF Graphics in Mac OS X看起来不错。 iPhone和OSX的API几乎完全相同,因此使用Mac OSX书籍没有问题。

所以我建议从Apple文档开始(你不需要阅读CGLayer绘图部分),尝试一些示例代码并弄清楚它是如何工作的。然后转到该书或在网上找到更多示例代码。祝你好运!