2014-10-02 19 views
-1

嗨,大家好,我是Obj c Programming的初學者,我從tableviewcell創建了一個「self segue」(segue爲相同的視圖控制器)。現在我的問題是,我在prepareForSegue方法中設置了很少的參數,但不知怎的,在調用這個方法之前,segue已經發生了(我甚至不會調用「performSeguewithIdentifier」)。我明白這可能是因爲segue與單元格相關聯。但是我發現沒有其他的方法來創建一個「自SEGUE」爭論相同的看法控制器在prepareforsegue之前加載被稱爲

請help.Btw我使用xcode6 ..

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
_selctdObj = [avObjArray objectAtIndex:indexPath.row]; 
if([_selctdObj isContainer]) 
    { 
    [self performSegueWithIdentifier:@"isContainerSegue" sender:self]; 
    } 
else 
    { 
    [self performSegueWithIdentifier:@"isItemSegue" sender:self]; 
    } 
} 

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
if ([[segue identifier] isEqualToString:@"isContainerSegue"]) { 
    // Get destination view 
    serverBrowseVC *sbvc = [segue destinationViewController]; 
    [sbvc setServerSelected:_serverSelected]; 
    [sbvc setBrowseObjID:_selctdObj]; 

} 
} 

現在不約而同「isContainerSegue」得到執行,即使是對象是不是一個容器。我也試過

//[self performSegueWithIdentifier:@"isContainerSegue" sender:self]; 

但每次「isContainerSegue」被執行..

+0

這個self segue的目的是什麼?你想達到什麼目的? – rdelmar 2014-10-02 18:43:00

+0

我正在嘗試瀏覽Upnp容器(可以涉及到瀏覽文件夾)。所以我需要遞歸瀏覽,直到它到達可玩項目。 – 2014-10-02 18:58:14

+0

我無法重現您的問題。我可以在prepareForSegue中設置參數,並且它們在目標控制器中正常工作。您需要顯示您在prepareForSegue中輸入的代碼,以及如何在目標視圖控制器中使用這些參數。 – rdelmar 2014-10-02 19:10:43

回答

0

你說你不打電話performSegueWithIdentifier評論,但你。如果你已經從細胞中連接了segue,你不應該這樣做。你也不應該實現didSelectRowAtIndexPath,只是prepareForSegue。您可以從prepareForSegue:sender:的發件人參數(發件人將是單元格)獲取indexPath。如果您對「if [_selctdObj isContainer]」子句有問題,則需要發佈isContainer的操作。

+0

感謝@rdelmar的回覆。問題恰恰在於,我不想讓segue自動執行,除非我調用「[self performSegueWithIdentifier:@」isContainerSegue「sender:self]」。但是我能夠在xcode 6中克隆一個self segue的唯一方法是通過將一個segue與一個cell關聯起來。當我控制從Storyboard中的ViewController圖標拖動到單元以外的任何地方時,我都沒有得到「segue」選項。 – 2014-10-03 02:52:37

+0

@AkshayVernekar,然後不要使用segue。只需實例化控制器的新實例,然後推送或呈現它。沒有什麼特別的理由需要用segue來完成。 – rdelmar 2014-10-03 03:14:59

+0

Thankyou @rdelmar ..我猜這是做到這一點的方式。 – 2014-10-03 03:18:36

相關問題