2
我在使用NSMutableArray
和NSMutableDictionary
時遇到問題。TableView中的NSMutableArray和NSMutableDictionary
我創建了一個測驗,當它停止時,它應該在tableview
中顯示當前得分和日期。然後它應該在tableview
中顯示這些值。但是當我加載它的viewController
時,tableview中沒有顯示任何內容。 mutableArray
在viewDidLoad:
方法中創建。我的代碼是否正確,或者我在這裏錯過了什麼?
- (IBAction)saveResult:(id)sender {
dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:NSLocalizedString(@"DATE", nil)];// @"HH:mm zz"];
dateNow = [NSDate date];
NSString *formattedDateString = [dateFormatter stringFromDate:dateNow];
// Add the quiz result to the array, reload the data in the tableview
highscoreAndDate = [NSMutableDictionary dictionaryWithObjectsAndKeys:
[NSString stringWithFormat:@"%i points", score], @"kResult",
formattedDateString, @"kDate", nil];
[highscore addObject:highscoreAndDate];
[tableView reloadData];
}
我的tableView方法:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [highscore count];
}
- (UITableViewCell *)tableView:(UITableView *)_tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
}
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat: @"HH:mm zz"];
cell.detailTextLabel.text = [[highscore objectAtIndex:indexPath.row] objectForKey:@"kResult"];
cell.detailTextLabel.text = [[highscore objectAtIndex:indexPath.row] objectForKey:@"kDate"];
return cell;
}
讓我看看didLoad方法。 – Balu
這不是關於Xcode的問題。 – 2013-04-03 06:29:32
在cellForRowAtIndexPath放置斷點並檢查它是否運行?如果它沒有運行,然後把你的邏輯viewWillAppear方法:) – iPatel