0

我有一个按钮来改变BOOL showSquare等于YES

这是按钮的代码

- (IBAction)Tap_Square:(id)sender {
    [graphicsView setNeedsDisplay];
    [graphicsView setShowSquare:YES];
}

这就是 if 语句所在的位置

if (showSquare) {
    CGContextSetFillColorWithColor(context, white);
    CGContextFillRect(context, CGRectMake(90, 90, 100, 100));
}

难道我做错了什么?

谢谢

4

2 回答 2

0

graphicsView 不是零?

尝试将 setter 设置为 showSquare,然后对其进行调试。

于 2012-08-16T16:39:54.490 回答
0

如果您想使用属性而不是实例变量,最好使用访问器方法来获取和设置它的值。

// use self.showSquare if you call this code in graphicsView instance
if (self.showSquare) {
    CGContextSetFillColorWithColor(context, white);
    CGContextFillRect(context, CGRectMake(90, 90, 100, 100));
}

还要检查您的属性是否已合成或具有 getter 和 setter。

于 2012-08-16T07:12:47.693 回答