Методы init UIColor возвращают UIColor *, а не id, как в большинстве классов, поэтому вам придется назначить его UIColor, а не вашему подклассу, чтобы избежать предупреждения.
аюсь создать подкласс UIColor, и я не могу понять, что не так.
В моем PColor.h
#import <Foundation/Foundation.h>
@interface PColor : UIColor {
BOOL isAvailable;
int colorId;
}
@property (nonatomic, assign) BOOL isAvailable;
@property (nonatomic, assign) int colorId;
@end
... и в моем PColor.m
#import "PColor.h"
@implementation PColor
@synthesize isAvailable;
@synthesize colorId;
@end
После создания объекта PColor я получаю:
//warning: incompatible Objective-C types initializing 'struct UIColor *', expected 'struct PColor *'
PColor *pcolor = [[PColor alloc] initWithHue:1 saturation:0 brightness:0 alpha:1];
Я что-то пропустил? Заранее спасибо.