zoukankan      html  css  js  c++  java
  • 设置滑动TabBar的显示和隐藏

    代码如下:

    //设置滑动的判定范围
    - (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
    {
        // 上滑动隐藏TabBar,上滑值越来越小,下滑动越来越大
        if (self.historyY+20<targetContentOffset->y)
        {
            [self setTabBarHidden:YES];
        }
        else if(self.historyY-20>targetContentOffset->y)
        {
            
            [self setTabBarHidden:NO];
        }
        self.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) { }]; }
  • 相关阅读:
    项目总结
    -webkit-background-clip渲染问题
    《编写可维护的JavaScript》- 类型检测
    百度ECharts使用
    使用HBuilderX将vue项目打包成app
    浅谈 asp.net core web api
    ASP.NET Core
    ASP.NET Core
    [翻译] 探究 Asp.net core 中间件 JWT bearer authentication 背后的技术
    ASP.NET Core
  • 原文地址:https://www.cnblogs.com/pengsi/p/7903066.html
Copyright © 2011-2022 走看看