2009-11-23 155 views
0

我對iPhone應用程序開發很新穎,迄今爲止表現不錯。但有一點我的應用程序不會做它打算... 這是一個基於tableview的應用程序,我推入一個新的控制器到堆棧來獲得一些UserInput,但是當控制器再次彈出數據是不知怎的,也許我誤解了指針的東西?指針參考?

rootviewcontroller.m:

edit = [fields objectAtIndex: indexPath.row]; 
listView.element = edit; 
[self.navigationController pushViewController: listView animated:YES]; 

ListView.m:

element.value = [list objectAtIndex: indexPath.row]; 
[self.navigationController popViewControllerAnimated:YES]; 

所以我究竟做錯了什麼?

感謝您的幫助

編輯:

值字段顯示在用的cellForRowAtIndexPath方法的實現代碼如下:

if (indexPath.section == 0) { 
UILabel *title = (UILabel*) [cell viewWithTag:1]; 
UILabel *detail = (UILabel*) [cell viewWithTag:2]; 
ListElement *l = [fields objectAtIndex: indexPath.row]; 
title.text = l.name; 
detail.text = l.value; 
+0

什麼數據不見了?你分配給element.value的對象已經被釋放或者什麼? – gerry3 2009-11-23 23:20:29

+0

好吧,我想閱讀的對象,這是分配給element.value ListView.m中的rootviewcontroller.m在edit.value ... – 2009-11-23 23:25:25

+0

你如何告訴帽子的數據是不存在_你不看它或在rootview還是*真的*不在edit.value(通過日誌或調試顯示)? – 2009-11-23 23:44:00

回答

0

如果數據是「水漲船高」的意思是「它不顯示在回到根視圖之後「可能可以通過修復

- (void) viewWillAppear:(BOOL)animated 
{ 
    [self.tableView reloadData]; 
} 

放入RootViewController。

+0

謝謝,幫助=) – 2009-11-24 07:06:30