2013-08-28 51 views
1

我正在爲選項卡式應用程序使用Storyboard。在特定的選項卡中,我需要顯示多個視圖。我有一個導航欄包含兩個按鈕(上一個和下一個);當我點擊下一個應用程序應該顯示下一個視圖(新的UIViewController不是下一個標籤),當我點擊上一個應用程序應該切換到前一個視圖(新的UIViewController),但不離開選定的標籤(該標籤欄應該保持顯示並具有相同的索引)。我如何使用Storyboard在iOS中的UIViewControllers之間切換

enter image description here

我想更改選定的選項卡里面的觀點,任何一個有什麼想法?

+0

更小規格請。當您按next時,是否想要顯示下一個選項卡中的視圖,但選擇了當前選項卡?或者你想呈現一個不同的視圖,特定於當前標籤? –

+0

'[self.tabBarController setSelectedIndex:1];'是你在找什麼? –

+0

我想呈現不同的視圖,但在當前標籤中。我想呈現一個新的視圖,但保持Tabbar與選定的選項卡。 –

回答

1

那麼如果你真的指的是UIView而不是UIViewControllers,那麼你所要做的就是用普通的ctrl和drag方法將視圖鏈接到你的.m文件。然後創建一個IBAction,當點擊按鈕時(按住CTRL拖動按鈕並開啓類型點擊動作)。然後會有一個方法在按鈕被點擊時自動調用。您還必須創建要顯示的第二個視圖,並將其與.m文件鏈接起來。

所以在方法:

{ 
//view1 the view you want to change, view2 the one you want to display 
[_view1 setHidden:TRUE]; 
[_view2 setHidden:FALSE]; 
} 

編輯:對於UIViewController中

它都可以通過界面生成器來完成。按住Ctrl單擊Suivant按鈕並將其拖到新的UIViewController上。然後點擊Modal並在新的UIViewController中放置選項卡欄和頂部欄。然後你必須重新設置它們,就像你在現有的UIViewController上做的一樣。否則,放置一個導航控制器,在檢查器中將其設置爲初始視圖控制器,按住Ctrl拖動IB中的選項卡欄控制器並將其設置爲根視圖控制器。這至少會爲您創建頂級欄。但是,你將不得不編輯suivant按鈕的動作,通過按住Ctrl鍵並將其設置爲推動。這就是我在你的項目的快速複製中對我的xcode所做的工作,它完美地工作。您也可以通過避免將您的新UIViewContoller和這樣重複的標籤欄的創建:

Editor ->Embed -> Navigation Controller 

讓我知道這是否正常工作:)

+0

我的意思是一個UIViewController :)對不起! –

+0

好的,我現在編輯它:) – isklikas

+0

@ManchesterUnited完成後,它應該現在工作(通過重新制作標籤欄我也是指當前的,但Ayush也建議最好的建議):) – isklikas

相關問題