zoukankan      html  css  js  c++  java
  • iOS之tabBar随tableView的滑动而隐藏/显现

    ` @property(nonatomic,assign)CGFloat historyY;

    #pragma mark Delegate
    //设置滑动的判定范围
    - (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
    {
        if (historyY+20<targetContentOffset->y)
        {
            [self setTabBarHidden:YES];
        }
        else if(historyY-20>targetContentOffset->y)
        {
        
            [self setTabBarHidden:NO];
        }
        historyY=targetContentOffset->y;
    }
    //隐藏显示tabbar
    - (void)setTabBarHidden:(BOOL)hidden
    {
        UIView *tab = self.tabBarController.view;
        CGRect  tabRect=self.tabBarController.tabBar.frame;
        if ([tab.subviews count] < 2) {
            return;
        }
    
        UIView *view;
        if ([[tab.subviews objectAtIndex:0] isKindOfClass:[UITabBar class]]) {
            view = [tab.subviews objectAtIndex:1];
        } else {
            view = [tab.subviews objectAtIndex:0];
        }
    
        if (hidden) {
            view.frame = tab.bounds;
            tabRect.origin.y=[[UIScreen mainScreen] bounds].size.height+self.tabBarController.tabBar.frame.size.height;
        } else {
            view.frame = CGRectMake(tab.bounds.origin.x, tab.bounds.origin.y, tab.bounds.size.width, tab.bounds.size.height);
            tabRect.origin.y=[[UIScreen mainScreen] bounds].size.height-self.tabBarController.tabBar.frame.size.height;
        }
    
        [UIView animateWithDuration:0.5f animations:^{
            self.tabBarController.tabBar.frame=tabRect;
        }completion:^(BOOL finished) {
        
        }];
    
    }`
  • 相关阅读:
    SQL Server profile使用技巧
    Java 十进制和十六制之间的转化(负数的处理)
    Step By Step(Lua调用C函数)
    Python、Lua和Ruby之优劣
    C++注释规范
    树莓派、 Arduino 、传统单片机开发板该如何选择?
    正则表达式
    python 读写文件
    python连接Oracle数据库
    MySQL获取Schema表名和字段信息
  • 原文地址:https://www.cnblogs.com/YaoJinye/p/5852744.html
Copyright © 2011-2022 走看看