如何更改GLPaint示例应用程序中使用的画笔图像?

时间:2010-12-28 06:16:18

标签: iphone objective-c ios

我已经下载了Apple提供的GLPaint示例,并且正在尝试了解其结构。

我想更改应用程序中使用的brushImage,以便我可以改变绘图时使用的画笔类型。我试图重新加载视图,以便找到一种方法来重新初始化与设置brushImage相关的内容,但我无法正常工作。

有人知道如何在此代码示例中修改此属性吗?

1 个答案:

答案 0 :(得分:2)

您可以将initWithCoder:(NSCoder *)编码器中的画笔图像代码抽象为它自己的方法,并动态更改brushImage,例如,

我有

- (void)setBrushType:(kBrushType)bType {
    CGImageRef      brushImage; 

    ...

    if (bType == kBrushTypeEraser) {
        brushImage = [UIImage imageNamed:@"Particle-solid.png"].CGImage;
    } else if (bType == kBrushTypeSolid) {
        brushImage = [UIImage imageNamed:@"Particle-solid.png"].CGImage;
    } else if (bType == kBrushTypeSoft) {
        brushImage = [UIImage imageNamed:@"Particle-soft.png"].CGImage;
    } else {
        NSAssert1(FALSE, @"Invalid brush type: %d", bType);
    }   

    ...

    if(brushImage) {    
    ...
    }
}

其中kBrushType是所有不同画笔类型的枚举。