您的位置:首页 > 产品设计 > UI/UE

UITabBarController

2014-08-18 22:14 363 查看
//只有被装在该数组的视图控制器才能够在运行的时候移动位置
tabBarCtrl.customizableViewControllers = @[viewCtrl6, viewCtrl3];

viewCtrl.tabBarItem.badgeValue = nil;//@"新消息";

tabBarCtrl.tabBar.translucent = NO;//半透明

//hidden、alpha、跳动坐标位置(UIView animaWithDuration:)
self.tabBarController.tabBar.hidden = !self.tabBarController.tabBar.hidden;
self.tabBarController.tabBar.alpha = 0.0; //效果和hidden一样
//利用视图边界外面隐藏标签栏,有动画效果,相对来说上面两种方法要长,没动画效果
   if (self.tabBarController.tabBar.frame.origin.y >= 480) {
[UIView animateWithDuration:0.5 animations:^{
self.tabBarController.tabBar.frame = CGRectMake(0, 480-49, 320, 49);
}];
}
else {
[UIView animateWithDuration:0.5 animations:^{
self.tabBarController.tabBar.frame = CGRectMake(0, 480, 320, 30);
}];
}

通过Xib文件或者storyboard创建的对象都会自动调用
- (void)awakeFromNib

自定义TabBar
1  使用UIButton替换系统的UITabBarItem
2  在按钮的action里改变UITabBarController的selectedIndex

//返回NO表示对应的标签栏不能响应点击
- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController
{
if ([viewController.title isEqualToString:@"第二页"]) {
return NO;
}

return YES;
}
点击标签响应事件
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
NSLog(@"%@", viewController.title);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息