iOS:我如何决定何时绘制UIView?

时间:2015-04-12 15:37:31

标签: ios user-interface uiview visibility

我在故事板上添加了一个UIView并将以下代码成功连接到了它(即当我加载应用程序时画在屏幕上的东西)

#import "UIView+DrawView.h"

@implementation DrawView
- (id)initWithFrame:(CGRect)frame {
    if (self = [super initWithFrame:frame]) {
        // Initialization code
    }
    return self;
}

- (void) drawRect:(CGRect)rect
{ //Get the CGContext from this view
    CGContextRef context = UIGraphicsGetCurrentContext();

    //Set the stroke (pen) color
    CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);
    //Set the width of the pen mark
    CGContextSetLineWidth(context, 5.0);

    // Draw a line
    //Start at this point
    CGContextMoveToPoint(context, 10.0, 30.0);

    //Give instructions to the CGContext
    //(move "pen" around the screen)
    CGContextAddLineToPoint(context, 310.0, 30.0);
    CGContextAddLineToPoint(context, 310.0, 90.0);
    CGContextAddLineToPoint(context, 10.0, 90.0);

    //Draw it
    CGContextStrokePath(context);
}

@end

但我想要的是手动切换此UIView以显示,我似乎无法做到。我尝试过以下方法:

  1. 在故事板中将UIView设置为隐藏,
  2. 设置DrawView.Hidden = YES;无济于事,在两种情况下都会立即绘制;
  3. 我希望你可以指导我在这里缺少的东西。

1 个答案:

答案 0 :(得分:-1)

确保在故事板中为您的班级设置了自定义类属性。