我一直在嘗試幾個小時試圖讓這個工作,但我似乎無法做到。用戶按下一個按鈕,該按鈕在HandlingPalettes中調用「newPalette」,然後推入SingleView。這裏的所有revelant代碼我有:在類之間傳遞NSMutableArray的問題
HandlingPalettes.h:
@interface HandlingPalettes : UIViewController {
NSMutableArray *navBarColour;
}
@property (nonatomic, retain) NSMutableArray *navBarColour;
-(void)newPalette;
@end
HandlingPalettes.m:
#import "HandlingPalettes.h"
#import "SingleView.h"
@implementation HandlingPalettes
@synthesize navBarColour;
-(void)newPalette {
UIColor *colourOfNavBar = [UIColor colorWithHue:0 saturation:0 brightness:0.25 alpha:1];
if (navBarColour == nil) {
navBarColour = [[NSMutableArray alloc] initWithObjects:colourOfNavBar, nil];
currentPalette = 0;
}
else {
[navBarColour addObject:colourOfNavBar];
currentPalette = navBarColour.count-1;
}
NSLog(@"Number: %i", navBarColour.count);
}
- (void)dealloc {
[super dealloc];
}
@end
SingleView.h:
#import "HandlingPalettes.h"
@interface SingleView : UIViewController {
}
HandlingPalettes *handlingPalettes;
@end
SingleView.m:
#import "SingleView.h"
@implementation SingleView
- (void)viewDidLoad {
handlingPalettes = [[HandlingPalettes alloc] init];
NSLog(@"Second number: %i", handlingPalettes.navBarColour.count);
[super viewDidLoad];
}
- (void)dealloc {
[handlingPalettes release];
[super dealloc];
}
@end
我的問題是,NSLog的返回:
數:1 第二個號碼:0
然後再回到第一個視圖,並再次按下按鈕..
號碼: 2 第二個號碼:0
並再次..
數3: 二麻木呃:0
有人可以幫我解釋爲什麼這不起作用嗎?
非常感謝。
它應該怎麼做? – Max 2011-03-09 04:00:15
爲什麼這是downvoted? – KingofBliss 2011-03-09 04:03:26
它應該傳遞數組,以便兩個區域的計數相同。 – Andrew 2011-03-09 04:09:29