0

本教程展示了如何使用 Quartz 2D 为视图绘制图形上下文: http ://www.techotopia.com/index.php/An_iPhone_Graphics_Drawing_Tutorial_using_Quartz_2D

但我想在 UIButton 上绘制,而不是在视图上绘制。我怎样才能做到这一点?谢谢

4

2 回答 2

0

一个按钮是一个 UIView。它继承自 UIControl,它继承自 UIView。

所以按钮有一个drawRect方法。

因此,您可以执行您在按钮上链接的文章中描述的所有操作。

然而,按钮被设置为为您做很多事情,并且覆盖 drawRect 方法可能会使这些事情无法正常工作。

按钮通常绘制一个标题和一个圆角矩形框。您可以通过将按钮的类型设置为自定义来关闭它。

如果您安装自定义按钮,则会绘制图像。

按钮通常也会在其图像上绘制一个突出显示,或者有第二个图像用于突出显示状态。如果你想实现drawRect,你需要自己处理绘制高亮状态。

通常,您希望避免使用 drawRect 并使用其他一些技术将您想要的内容放入您的视图中。

你到底想做什么?

于 2012-04-05T15:54:25.043 回答
0

在 UIView 上绘图。将视图作为子视图添加到您的 UIButton。

于 2012-04-05T14:38:16.550 回答