兩個屬性:屬性是空的viewDidLoad之外
@property (retain, nonatomic) NSString *drinkType;
@property (retain, nonatomic) NSString *wheelType;
當從viewDidLoad中爲self.drinkType等訪問,他們持有我所期望的價值。但是,從公共方法訪問時
-(void)updateSentenceWithSelectedAromas:(NSMutableArray *)selectedAromas;
它們爲空。這裏發生了什麼?
「selectedAromas」數組從另一個控制器傳遞到此方法。
ViewController *aromaVC = [[ViewController alloc] init];
[aromaVC updateSentenceWithSelectedAromas:selectedAromas];
ViewController.h
-(void)updateSentenceWithSelectedAromas:(NSMutableArray *)selectedAromas;
@property (retain, nonatomic) NSString *drinkType;
@property (retain, nonatomic) NSString *wheelType;
ViewController.m
- (void)viewDidLoad
{
[super viewDidLoad];
// This is working
NSLog(@"The drink type is:%@", self.drinkType);
}
-(void)updateSentenceWithSelectedAromas:(NSMutableArray *)selectedAromas {
// This returns null
NSLog(@"The drink type is:%@", self.drinkType);
}
我敢打賭,你正在實例化一個喲你的視圖控制器來自一個XIB或故事板,然後你正在實例化你的視圖控制器的另一個獨立版本。每次嘗試引用「'drinkType」「或」'wheelType「時,請檢查以確保您的視圖控制器地址相同。 –
我認爲你需要分享更多的代碼來診斷問題 – Merlevede
我認爲你需要非常仔細地聆聽@MichaelDautermann告訴你的內容。 – matt