2010-08-23 76 views

回答

2

如文档中说:

drawRect: Draws the receiver’s image within the passed-in rectangle. 

参数

RECT:一个矩形,它定义来限制绘制的区域。

您可以使用此方法在视图的特定区域内绘制UIView。

  • (无效)setNeedsDisplay

默认情况下,几何形状改变为图 自动重新显示视图 ,而无需调用 drawRect:方法。因此,您需要 请求在绘制视图的数据或状态用于绘制视图时更改仅视图重绘 。在这种情况下, 发送视图setNeedsDisplay 消息。当应用程序 返回到运行循环时,标记为 需要显示的任何UIView对象将自动重新显示 。

我觉得这个方法可以让你控制你是否想让系统自动为你重绘你的UIView。如果你想通过你自己的状态来控制进程,比如:如果用户点击这个按钮,重绘;否则,不要。

列出子视图。

  • (无效)layoutSubviews

由子类重写布局 子视图时layoutIfNeeded是 调用。此方法的默认实现 什么都不做。

我对这种方法没有太多的经验。我可以告诉你的是,你需要覆盖它来布局你的子视图

+0

非常感谢。这很有帮助。 – Abhinav 2010-08-23 06:39:29