gpt4 book ai didi

iphone - UIView 无法正确加载?

转载 作者:行者123 更新时间:2023-11-29 04:04:56 25 4
gpt4 key购买 nike

我的 UIView 的代码文件设置了 Storyboard中 View 的自定义类。但是,当我运行应用程序并加载 View 时,什么也没有发生?我没有收到任何 NSLogs,屏幕上没有绘制任何内容?有谁知道我做错了什么?我没有正确清理某些东西吗?

我的 UIView 代码:

- (id)initWithFrame:(CGRect)frame
{
NSLog(@"Drawling area loaded");
self = [super initWithFrame:frame];
if (self) {
// Initialization code
}
return self;
}


- (void)drawRect:(CGRect)rect
{

CGPoint dotOne = CGPointMake(1, 1);
[squareLocations addObject:[NSValue valueWithCGPoint:dotOne]];

CGPoint dotTwo = CGPointMake(10, 10);
[squareLocations addObject:[NSValue valueWithCGPoint:dotTwo]];

CGPoint dotThree = CGPointMake(100, 100);
[squareLocations addObject:[NSValue valueWithCGPoint:dotThree]];


int numby = [squareLocations count];

for (int i = 0; i < numby; i++)
{
NSValue *pointLocation = [squareLocations objectAtIndex:i];
CGPoint tmpPoint = [pointLocation CGPointValue];

CGRect tmpRect = CGRectMake(tmpPoint.x, tmpPoint.y, 10, 10);

CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(context, 5.0);
CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceRGB();
CGFloat components[] = {0.0, 0.0, 1.0, 1.0};
CGColorRef color = CGColorCreate(colorspace, components);
CGContextSetStrokeColorWithColor(context, color);
CGContextMoveToPoint(context, tmpPoint.x, tmpPoint.y);
CGContextAddLineToPoint(context, 300, 400);
CGContextStrokePath(context);

}
}


@end

最佳答案

我认为您应该使用调试器来确保您的 squareLocations ivar 在 drawRect: 方法中不是nil。您可以将任何消息发送到nil,而不会出现任何错误,并且实际上在 Objective-C 中什么也不做。另外,在drawRect:方法中初始化squareLocations ivar也可以解决该问题。

关于iphone - UIView 无法正确加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15415931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com