Iphone 如何使用UIbutton实现Tabbar控制器一样的功能?
我希望两个视图控制器在两个三视图控制器之间切换,方法是像TabBarController一样保留当前上下文。但不使用TabBarController模板 查看附件屏幕截图Iphone 如何使用UIbutton实现Tabbar控制器一样的功能?,iphone,ios,ipod,Iphone,Ios,Ipod,我希望两个视图控制器在两个三视图控制器之间切换,方法是像TabBarController一样保留当前上下文。但不使用TabBarController模板 查看附件屏幕截图 ?在VC中,您应该定义3UIViewController,并在-(id)init方法中初始化它们。然后,当您按下按钮时,您只需将相应的视图控制器连接到self.view上,就可以拥有一个“主”视图控制器,并将控件放在其视图的底部。然后,当按下按钮时,它将“显示”和“关闭”3个视图控制器(我希望您显示的是分段控件)。只要使用UI
?在VC中,您应该定义3
UIViewController
,并在-(id)init
方法中初始化它们。然后,当您按下按钮时,您只需将相应的视图控制器连接到self.view
上,就可以拥有一个“主”视图控制器,并将控件放在其视图的底部。然后,当按下按钮时,它将“显示”和“关闭”3个视图控制器(我希望您显示的是分段控件)。只要使用UIViewController的标准功能,这一切都会很好地工作
编辑:为了应对这种转变,你需要运用各种各样的想法来找到你最喜欢的。一些想法:
- 当点击另一个选项卡时,关闭显示的视图,并在没有动画的情况下显示新视图。这应该模仿tabBarController的功能
- 阅读UIViewController类描述中标题为“实现容器视图控制器”的段落,它向您展示了容器视图可以导致从viewController a转换为viewController B的各种方式
UIView
,您可以执行以下操作
在你的.h
文件中取一个UISegmentedControl
和三个UIViews
为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
。您甚至可以添加动画
以获得视图过渡效果
它可以与不同的
UIViewControllers
配合使用,但您必须在每个控制器中添加UISegmentControl
并维护UIDesign
。还需要在代码中维护currentIndex
,您应该定义3 UIViewController,并且您可以在按任意一个视图时设置剩余两个视图的隐藏属性。然后,当您按下任何其他按钮时,您可以显示隐藏属性并为上一个视图设置隐藏属性。请使用自定义选项卡栏控制器,但选项卡选项卡不能这样工作。它保留了前一个视图的contain(如变量、添加在其上的视图等),并在返回时显示给我们。解除控制器会导致该视图从头开始。