我正在使用單例類來跨視圖傳輸NSMutableArray。防止在NSMutableArray中重複打印輸出元素
我遇到的問題是我的數組顯示多次。
現在我正在處理三個UITextFields。每個都被添加到陣列並以特定格式輸出。這裏是我的輸出如下:
A/B
Ç
A/B
Ç
A/B
Ç
所有我需要顯示的是:
A/B
Ç
這裏是我的代碼,如果有人能幫助我找到了丟失或需要返工:
要顯示的文字:
UILabel * myLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 300, 200)];
[myLabel setFont:[UIFont fontWithName:@"Helvetica" size:10.0]];
myLabel.numberOfLines = 0;
NSMutableString * string = [NSMutableString string];
Education * myEducation = [Education sharedEducation];
for (Education * output in myEducation.educationOutputArray)
{
[string appendString:[NSString stringWithFormat:@"%@/%@ \n%@\n", [myEducation.educationOutputArray objectAtIndex:0], [myEducation.educationOutputArray objectAtIndex:1], [myEducation.educationOutputArray objectAtIndex:2], nil]];
}
myLabel.text = string;
[self.view addSubview:myLabel];
這裏是我正在保存的文本:
-(void)saveButtonTapped:(id)sender
{
[_educationArray addObject:_aTextField.text];
[_educationArray addObject:_bTextField.text];
[_educationArray addObject:_cTextField.text];
Education * myEducation = [Education sharedEducation];
myEducation.educationOutputArray = _educationArray;
[self.navigationController popViewControllerAnimated:YES];
}
編輯*
當用戶在文本字段中輸入文本時,他們還可以使用相同的三個文本字段添加一組新文本。
如果我刪除了for循環,只顯示第一個。我怎樣才能讓所有的文字顯示?
編輯兩個*
我嘗試這樣做:
[string appendString:[NSString stringWithFormat:@"%@/%@ \n%@\n", [output major], [output university], [output timeAtSchool]]];
導致此錯誤:
2012-12-29 17:03:07.928 EasyTable[14501:c07] -[__NSCFString major]: unrecognized selector sent to instance 0x7176850
2012-12-29 17:03:07.941 EasyTable[14501:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString major]: unrecognized selector sent to instance 0x7176850'
*** First throw call stack:
(0x1c99012 0x10d6e7e 0x1d244bd 0x1c88bbc 0x1c8894e 0x6162 0xff817 0xff882 0xffb2a 0x116ef5 0x116fdb 0x117286 0x117381 0x117eab 0x1184a3 0x118098 0x2c10 0x10ea705 0x21920 0x218b8 0xe2671 0xe2bcf 0xe1d38 0x2e5213 0x1c61afe 0x1c61a3d 0x1c3f7c2 0x1c3ef44 0x1c3ee1b 0x1bf37e3 0x1bf3668 0x1e65c 0x240d 0x2335 0x1)
libc++abi.dylib: terminate called throwing an exception
它可能有更多的關於如何將對象添加到數組而不是如何打印,你可以添加代碼嗎? – wattson12
如果可以,應用程序的屏幕截圖可能會有幫助。你可能會讓自己太難過了。 –