zoukankan      html  css  js  c++  java
  • 动态 改变导航栏透明度

    #pragma mark - 实现代理方法  UINavigationBarDelegate 改变导航栏的颜色等功能

    - (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated

    {

        self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;

        UIImage *image = [UIImage imageNamed:@"128"];

        [self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];

        UIView *view = self.navigationController.navigationBar.subviews[0];

        

        if (_tableView.contentOffset.y <= - 64) {

            

            self.navigationController.navigationBar.translucent = YES;

            view.alpha = 0;

        } else if(_tableView.contentOffset.y > - 64 && _tableView.contentOffset.y <= 0) {

        

            self.navigationController.navigationBar.translucent = YES;

                view.alpha = (64 - fabs(_tableView.contentOffset.y)) / 200.0f;//绝对值

        } else {

            

            view.alpha = (_tableView.contentOffset.y + 128) / 200.0f;

            if (view.alpha >= 1) {

                self.navigationController.navigationBar.translucent = NO;

            }

            

        }

        DLog(@"%f", _tableView.contentOffset.y);

        

    }

  • 相关阅读:
    第一次作业
    第0次作业—姚舜禹17-1
    第三周作业
    第二周作业
    第一周作业
    第零周作业
    第三周作业
    第二周作业
    第一周作业
    第0次作业
  • 原文地址:https://www.cnblogs.com/iOS-mt/p/4251479.html
Copyright © 2011-2022 走看看