Wdrażam niestandardowy UIButton z minimalną funkcjonalnością. Plik .h:UIButton.layer.cornerRadius nie istnieje?
#import <Foundation/Foundation.h>
@interface CustomButton : UIButton {
}
@end
jestem napotyka błąd kompilacji w linii (A) w pliku .m:
- (id)initWithCoder:(NSCoder *)coder {
if(self = [super initWithCoder:coder]) {
CALayer *layer = [self layer];
NSLog(@"layer=%@",layer);
NSLog(@"delegate=%@",[layer delegate]);
#ifdef __IPHONE_3_0
layer.cornerRadius = 4.0f; // (A) error: request for member 'cornerRadius' in something not a structure or union
#endif
}
return self;
}
Gdybym wykomentuj linii (A), pojawia się następujący wyjście:
2009-10-08 17:35:06.681 MyApp[2596:4e07] layer=<CALayer: 0x3cdf520>
2009-10-08 17:35:06.683 MyApp[2596:4e07] delegate=<CustomButton: 0x3cdaff0; baseClass = UIButton; frame = (9 212; 255 55); opaque = NO; autoresize = RM+BM; layer = <CALayer: 0x3cdf520>>
Według documentation, CALayer powinien mieć właściwość cornerRadius. Używam iPhone SDK 3.1, a nawet dodałem #ifdef, aby to potwierdzić.
Czy ktoś może mi pokazać, gdzie przeoczyłem oczywistość?
Dzięki
Jeśli masz na myśli „#import "CustomButton.h", ja, że na początku pliku .m. – tba
ugh. Nie, przepraszam, formatowanie przykręcone rzeczy. #import –
Dziękuję! To działało – tba