2010-10-11 24 views
0

我有一個基於導航控制器的應用程序。我的觀點包括兩個tableviews如下:UINavigationController總是以相同的數據加載表格視圖

Category 
    Item within category 

基本上我允許用戶使用導航欄上的+按鈕來創建類別。然後他們選擇一個類別,然後再次按下+按鈕以創建該類別中的項目。

我的問題是,如果我創建一個類別,並添加一些項目,然後返回並選擇一個不同的類別,顯示第一個類別中的相同項目。

這是我使用didSelectRow創建我的項目控制器:

if (detailViewController==nil) 
    detailViewController = [[ItemViewController alloc] init]; 

detailViewController.category = [[APP_DELEGATE listsArray] objectAtIndex:indexPath.row]; 
[self.navigationController pushViewController:detailViewController animated:YES]; 

從viewDidLoad中在ItemViewController:

items = [[NSMutableArray alloc] initWithCapacity:30]; 

我怎樣才能停止顯示每個相同的項目?

感謝

編輯:用於填充物品

代碼:

- (void)addNameController:(AddName *)addNameController didAddName:(NSString *)name { 

if (name) { 
    NSLog(@"%@", name); 
    [items addObject:name]; 
    [self.tableView reloadData]; 
} 
[self dismissModalViewControllerAnimated:YES]; 
} 

回答

1

移動項目陣列viewDidAppear在ItemViewController的初始化,並調用reloadData。 viewDidLoad只在第一次調用ItemViewController時被調用。

+0

這會導致項目在表格視圖中短暫閃爍,然後消失。謝謝 – joec 2010-10-11 15:28:20

+0

你可以顯示填充項目的代碼嗎? viewDidAppear中還有其他工作嗎? – Anna 2010-10-11 15:36:33

+0

見上文。謝謝 – joec 2010-10-11 15:49:34

相關問題