1
我堅持一個非常奇怪的問題之後,至少對我來說,無法找出解決的辦法。問題是我有在接口定義了兩個nsMutableArrays無法訪問的NSMutableArray對象甚至宣稱正確
NSMutableArray *lastItemForFormula;
NSMutableArray *lastItemForExpression;
@property (nonatomic, retain) NSMutableArray *lastItemForFormula;
@property (nonatomic, retain) NSMutableArray *lastItemForExpression;
,然後合成它們的實現:
@synthesize lastItemForFormula;
@synthesize lastItemForExpression;
嘗試使用它我的我的功能是這樣的:
-(void)elementClicked:(id)sender {
UIButton *btnClicked=(UIButton*)sender;
NSString* formula=[label text];
NSString *stringToBeConcatenated=[elements objectAtIndex:btnClicked.tag];
formula=[formula stringByAppendingString:stringToBeConcatenated];
[lastItemForFormula addObject:[formula copy]]; //First
[label setText:formula];
stringToBeConcatenated=[elements objectAtIndex:btnClicked.tag+1];
if ([labelExpression.text length]==0) {
[lastItemForExpression addObject:[stringToBeConcatenated copy]]; //Second
[labelExpression setText:[lastItemForFormula objectAtIndex:[lastItemForFormula count]]];
}
else {
[lastItemForExpression addObject:[[NSString stringWithFormat:@"%@+%@",[labelExpression text], stringToBeConcatenated] copy]]; //Third
[labelExpression setText:[lastItemForFormula objectAtIndex:[lastItemForFormula count]]];
}
}
但是,當我在調試程序時,我在兩個陣列中都沒有得到任何東西......在兩個盤旋時不斷顯示0x0。我相信這很可能是內存管理問題。我會非常感激任何幫助。
你忘了保留他們。固定。 – bbum 2011-04-15 22:53:55
@bbum很近似的情況最近發生了......你在這種情況下建議什麼? – Tobias 2011-04-15 23:05:51
和是非常感謝這麼快速準確的回覆 – Tobias 2011-04-15 23:06:53