我正在使用導航控制器到達UITableView。在這個UItableView中,有一個搜索欄和50個單元格。當我不滾動,然後回來,應用程序正常行爲,但當我向下滾動像10個單元格,然後回來,我的應用程序崩潰與EXC_BAD_ACCESS錯誤。任何想法可能是這場崩潰的原因?當滾動UItableView並擊回時崩潰應用程序
在的dealloc,我釋放我在頭文件中創建的所有對象:
- (void)dealloc
{
[listContent release];
[filteredListContent release];
[tmpCell release];
[cellNib release];
[super dealloc];
}
和用於功能創建的細胞,它是如下:(注我做一個備用的UITableView用搜索欄)
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *kCellID = @"cellID";
ApplicationCell *cell = (ApplicationCell *)[tableView dequeueReusableCellWithIdentifier:kCellID];
if (cell == nil)
{
[self.cellNib instantiateWithOwner:self options:nil];
cell = tmpCell;
self.tmpCell = nil;
}
/*
If the requesting table view is the search display controller's table view, configure the cell using the filtered content, otherwise use the main list.
*/
NSDictionary *dataItem;
if (tableView == self.searchDisplayController.searchResultsTableView)
{
dataItem = [self.filteredListContent objectAtIndex:indexPath.row];
}
else
{
dataItem = [self.listContent objectAtIndex:indexPath.row];
}
// Display dark and light background in alternate rows -- see tableView:willDisplayCell:forRowAtIndexPath:.
cell.useDarkBackground = (indexPath.row % 2 == 0);
// Configure the data for the cell.
cell.icon = [UIImage imageNamed:@"iTaxi.jpeg"];
cell.publisher = [dataItem objectForKey:@"Number"];
cell.name = [dataItem objectForKey:@"Name"];
cell.price = [UIImage imageNamed:@"order-taxi.png"];
return cell;
}
ViewDidUnload具有相同的代碼作爲的dealloc
你可以從後發生這種情況時控制檯全行? – Luke
你可以發佈代碼嗎? – Tendulkar
請發佈UIViewController中的'viewDidAppear'或'viewDidLoad'代碼,您可以從中獲得'UITableView'控制器。還有'UITableView'所在控制器的'dealloc'和'viewDidUnload'。 – Eimantas