我希望在兩個三視圖控制器之間切換,保留當前上下文,就像TabBarController所做的一樣。但不使用TabBarController模板。我們如何使用UIbutton來實現像功能一樣的tabbarcontroller?
查看截圖截圖。
?
我希望在兩個三視圖控制器之間切換,保留當前上下文,就像TabBarController所做的一樣。但不使用TabBarController模板。我們如何使用UIbutton來實現像功能一樣的tabbarcontroller?
查看截圖截圖。
?
在你的VC中,你應該定義3 UIViewController
並在-(id)init
方法中初始化它們。然後,當您按下按鈕時,您只需在self.view
上附加相應的視圖控制器。
你可以有一個「主」視圖控制器,並讓它把控制放在其視圖的底部。然後當按鈕被按下時,它會「呈現」和「消除」3個視圖控制器(我希望這是您展示的分段控件)。這應該都可以很好地使用UIViewController的標準功能。
編輯:爲了應對過渡,你將需要玩各種想法來找到你最喜歡的一個。一些想法:
當點擊不同的標籤時,關閉顯示的視圖並顯示沒有動畫的新視圖。這應該模仿tabBarController做什麼
閱讀題爲「實現一個容器視圖控制器」的UIViewController類的描述段落 - 它表明你的各種方式容器的觀點可能會導致來自的viewController A過渡到的viewController乙
但標籤標籤不能像這樣工作。它保存了之前視圖的包含(如變量,添加的視圖等),並在我們回來時顯示給我們。解散控制器導致從該視圖再次開始。 –
如果你一直在努力同UIView
,你可以這樣做
拿在.h
文件UISegmentedControl
和三個UIViews
。
Buind每個視圖,並且與在IB
changeView
行爲段控制UIControlEventsValueChanged
- (IBAction) changeView
{
switch (segmentViews.selectedSegmentIndex)
{
case 0:
[firstView setHidden:NO];
[secondView setHidden:YES];
[thirdView setHidden:YES];
break;
case 1:
[firstView setHidden:YES];
[secondView setHidden:NO];
[thirdView setHidden:YES];
break;
case 2:
[firstView setHidden:YES];
[secondView setHidden:YES];
[thirdView setHidden:NO];
break;
}
}
它將與的selectedSegmentIndex
的變化而變化得到改變。給予適當的backgrondColor
它看起來像tapbar
。您甚至可以爲視圖轉換效果添加animation
。
它可以適用於不同的UIViewControllers
,但您必須在每個控制器中添加UISegmentControl
並保持UIDesign
。還需要維護currentIndex
。
在你的代碼中你應該定義3個UIViewController,並且你可以在任何一個視圖上設置隱藏的屬性。然後,當你按任何其他按鈕,然後你可以顯示隱藏的屬性,併爲先前的視圖設置隱藏的屬性。
請使用自定義標籤欄控制器 – Deepesh