我对 UIView 进行了子类化,并提供了我自己的 drawRect,效果很好。但是我将这些方法添加到我的子类中:
- (id) alloc
{
NSLog(@"Alloc");
return [super alloc];
}
- (id) init
{
NSLog(@"Init");
if (self = [super init])
flashWhite = true;
return self;
}
我认为无论何时创建子类的对象(通过 Interface Builder 发生),都会调用 alloc 和 init 方法。但是对象已创建,但我的 init 和 alloc 没有被调用。这不应该发生以确保正确初始化吗?
此外,构建会产生一个警告,即 UIView 可能不会响应“alloc” - 它是否必须从 NSObject 继承它,或者如何正确创建 UIView?
我在上面的目标是,我的子类视图将能够在 IB 创建后进行自定义初始化。