2012-08-25 51 views
0

我有一個簡單的主/細節tableview。爲了讓我的選擇在主人的詳細視圖,我使用下面的代碼在詳細信息視圖中設置標籤(lTest)。在segue後無法更改目標視圖中的值

但是,看起來這段代碼是在不同的視圖之前/之後運行的,因爲它不會返回一個錯誤,但是lTest的值不會改變(在屏幕之後屏幕上不可見)。

(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    if ([[segue identifier] isEqualToString:@"showDetail"]) { 
     NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];   
     ViewController *Targetview = segue.destinationViewController; 
     Targetview.lTest.text=[NSString stringWithFormat:@"Row %d",indexPath.item]; 
    } 
} 

如何更改另一視圖中的標籤?

回答

1

您的新控制器在執行viewDidLoad:之前不會設置任何視圖。給它一個字符串屬性,以保存lTest擁有的文本並在prepareForSegue:期間存儲該文本,然後更新ViewController中的標籤文本。

+0

謝謝你!你拯救了我的生命,半天試圖找出發生了什麼,很多教程和沒有人這樣說! 100謝謝 –

相關問題