IOS_实现TabBar切换时底部切换效果
来源:互联网 发布:中标麒麟怎么卸载软件 编辑:程序博客网 时间:2024/05/02 00:07
1.首先实现代理方法
#pragma mark -- UITabBarControllerDelegate- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{ UIImageView* slider = (UIImageView*)[self.tabBar viewWithTag:TAB_SLIDER_TAG]; NSUInteger selectedIndex = [self.viewControllers indexOfObjectIdenticalTo:viewController]; if (slider) { [self.tabBar bringSubviewToFront:slider]; [UIView beginAnimations:nil context:nil]; [UIView setAnimationDuration:0.2]; CGRect frame = slider.frame; frame.origin.x = [self horizontalLocationFor:selectedIndex]; slider.frame = frame; [UIView commitAnimations]; } else { [self addTabBarSliderAtIndex:selectedIndex]; }}
2.步骤1中又两个方法,需要实现下一个是水平移动、一个是更改图片
- (void)addTabBarSliderAtIndex:(NSUInteger)itemIndex{ UIImage* sliderImage = [UIImage imageNamed:@"tab_slider"]; UIImageView* slider = [[UIImageView alloc] initWithImage:sliderImage] ; slider.tag = TAB_SLIDER_TAG; slider.frame = CGRectMake([self horizontalLocationFor:itemIndex] , self.tabBar.height - sliderImage.size.height , sliderImage.size.width , sliderImage.size.height); [self.tabBar addSubview:slider];}- (CGFloat) horizontalLocationFor:(NSUInteger)tabIndex{ CGFloat tabItemWidth = self.tabBar.frame.size.width / self.viewControllers.count; CGFloat halfTabItemWidth = (tabItemWidth / 2.0) - (_sliderWidth / 2.0); return (tabIndex * tabItemWidth) + halfTabItemWidth;}
- IOS_实现TabBar切换时底部切换效果
- iOS(三)实现App底部TabBar的切换:一
- iOS(三)实现App底部TabBar的切换:二
- Fragment实现底部选项卡切换效果
- 彩色TabBar切换动画实现
- android tabbar切换的实现
- HTML5菜单栏切换实现底部滑块滑动效果实现
- 仿投哪网底部切换Button效果
- tabBar视图互相切换时弹出登陆页效果问题
- Android仿微信底部实现Tab选项卡切换效果
- Android 底部导航条切换高亮的效果实现
- 猫猫学iOS(四十三)之网易彩票底部自定义TabBar实现切换
- AJ学IOS(43)之网易彩票底部自定义TabBar实现切换
- 页面切换动画效果(tabBar事件)
- weui 1.1.2版本tabbar切换以及底部位置问题
- 仿微信底部栏图标切换时,颜色渐变效果
- Android底部菜单切换实现
- FragmentTabHost实现底部tab切换
- Android 4.2 Wifi Display 之 Settings 源码分析(二)
- Spring框架
- JQuery 权限选择(可以排序)
- 使用xml 控制imageview的缩放
- MySQL 日期和时间函数
- IOS_实现TabBar切换时底部切换效果
- QT无法定位程序输入点*于动态链接库 QtCore4.dll 解决方法
- Android 之自定义控件样式在drawable文件夹下的XML实现
- mysqldump 命令的使用
- 边际回报递减规律
- Ubuntu 11.10 mysql problem after upgrade
- 【Win8的全局搜索】
- hdu 2099 整数的尾数 http://acm.hdu.edu.cn/showproblem.php?pid=2099
- Windows Embedded CE 6.0 下载地址和序列号