0

簡而言之,我該如何設法從一組UIViews中加載一個特定的uiview,所有這些都包含在一個XIB文件中? iboutlets?怎麼樣?如何從一個包含在一個XIB文件中的3個選擇中加載一個視圖?

在某些情況下,我想顯示第一個視圖而不是第二個視圖,有時候我想顯示第三個而不是第一個視圖。他們都是相似的UIViews但是隻有一個可以顯示MODALLY呈現..我知道哪個UIView顯示取決於用戶與點擊按鈕的交互..但問題是我如何具體選擇某個視圖來顯示,然後附加它模態地呈現它。

詳細這是我迄今所做的:

嗨, 我有我的TestViewController.xib文件內部的三個視圖對象,像這樣:

3 views present in one xib file

這個廈門國際銀行的「文件的所有者'連接到TestViewController類。

上運行的時候我編程實例化TeamViewController類,像這樣:

TestViewController *tVController = [[TestViewController alloc] initWithNibName:@"TestViewController" bundle:nil]; 

然後我目前認爲模態像這樣:

UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:ls]; 
    [nav setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal]; 
    [nav setModalPresentationStyle:UIModalPresentationFormSheet]; 
    nav.navigationBar.tintColor = [UIColor blackColor]; 
    [nav setNavigationBarHidden:YES]; 

    [rootViewController.navigationController presentModalViewController:nav animated:YES]; 
    nav.view.backgroundColor = [UIColor blackColor]; 
    self.modalNavController = nav; 
    [nav release]; 
    [tVController release]; 

這所有的作品和我的看法是加載,但是它只會自動加載其中一個視圖。 我想要做的是能夠知道如何只加載一個SPECIFIC UIView實例化TestViewController時。我認爲實現這一目標的一種方式是爲他們創建IBOutlets並管理哪些視圖以這種方式顯示?所以我在類中創建了三個IBOutlet,然後將它們從Xib的fileown連接到每個UIView。這連接好了。

IBOutlet *view1; 
IBOutlet *view2; 
IBOutlet *view3; 

我能夠做這樣的事:

[self.view addSubview:view2]; 

,這將正常顯示視圖2,但不是在模式的看法,我會非常喜歡它實例TestViewController時。

任何人都可以指導我如何實現這個目標?

感謝

回答

1

你應該給每個視圖一個獨特的標籤,然後使用viewWithTag:

CNC中

爲了這個工作,你可能需要做NSNib *n = [[NSNib alloc] initWithNibNamed:bundle:]

+0

你能否進一步解釋我可以如何利用從筆尖初始化到實際查看正確視圖的所有內容,然後確保正確的視圖出現在請使用您建議的方法進行模態視圖轉換? – Pavan

相關問題