【发布时间】:2014-05-08 06:32:40
【问题描述】:
我尝试使用宏使更改更灵活地添加新项目。 但不知何故,框架不会是我预期的大小。如果我将 ANNOMENUV_NUMBER_OF_ITEMS 直接更改为 5,那么它将按预期工作。谁能告诉我为什么会这样?
#define ANNOMENUV_ITEMS @[@"Text",@"Font",@"Bold",@"Italic",@"Underline",@"Color"]
#define ANNOMENUV_NUMBER_OF_ITEMS [ANNOMENUV_ITEMS count]-1
#define ANNOMENUV_ITEM_WIDTH 45
#define ANNOMENUV_ITEM_CLOSE_WIDTH 45
- (id)initWithFrame:(CGRect)frame{
//returns correctly the 5 items
NSLog(@"Count %d",ANNOMENUV_NUMBER_OF_ITEMS);
self = [super initWithFrame:CGRectMake(frame.origin.x, frame.origin.y,ANNOMENUV_ITEM_WIDTH*ANNOMENUV_NUMBER_OF_ITEMS+ANNOMENUV_ITEM_CLOSE_WIDTH, ANNOMENUV_SIZE_HEIGHT)];
if (self) {
self.items = [NSMutableArray arrayWithArray: ANNOMENUV_ITEMS];
}
return self;
}
【问题讨论】:
标签: objective-c ios7 macros