0


我有我的主 iOS 视图,其中 UIVIew 作为子视图链接到一个类(称为 graphView)。我的 graphView 有一个在应用程序启动时启动的 drawRect 方法。

现在,单击主视图中的按钮,我希望子 UIView 使用特定参数刷新(因此 drawRect 重新启动)。

我该怎么做,即如何访问最初实例化的 graphView 类?

谢谢

4

2 回答 2

2

您可以通过在 UIView 上调用 setNeedsDisplay 来请求更新视图。然后应该由操作系统调用drawRect方法。

如果您在 XCode 设计器中创建了子视图,请在 UIViewDelegate 中创建 UIView 的出口以访问子视图实例。

于 2012-05-06T10:48:34.953 回答
1

您应该有一个 GraphView 的属性。通过这个,您始终可以在主视图控制器中访问您的 Graphview,即:

@property (strong, nonatomic) GraphView *graphView

你会在你的实现中像这样合成:

@synthesize graphView = _graphView;

当用户现在按下按钮时,您可以执行以下功能:

- (void) buttonTouched:(id)sender
{
    [_graphView setNeedsDisplay];
}

这会将 _graphView 标记为需要重绘的视图,从而在下一个绘制周期中执行其 drawRect: 方法。

于 2012-05-06T10:49:00.160 回答