• tableview_nav 动画效果


    -(void)scrollViewDidScroll:(UIScrollView *)scrollView

    {

        CGFloat yOffset  = scrollView.contentOffset.y;

        CGFloat xOffset = (yOffset + BackGroupHeight)/2;

        

        if (yOffset < -BackGroupHeight) {

            

            CGRect rect = imageBG.frame;

            rect.origin.y = yOffset;

            rect.size.height =  -yOffset ;

            rect.origin.x = xOffset;

            rect.size.width = KScreen_Width + fabs(xOffset)*2;

            

            imageBG.frame = rect;

        }

        

        

        CGFloat alpha = (yOffset+BackGroupHeight)/BackGroupHeight;

        [self.navigationController.navigationBar setBackgroundImage:[self imageWithColor:[[UIColor orangeColor]colorWithAlphaComponent:alpha]] forBarMetrics:UIBarMetricsDefault];

        titleLabel.alpha=alpha;

        alpha=fabs(alpha);

        alpha=fabs(1-alpha);

       

        alpha=alpha<0.2? 0:alpha-0.2;

        

        

        BGView.alpha=alpha;

     

     

    }

     

     

    - (UIImage *)imageWithColor:(UIColor *)color

    {

        // 描述矩形

        CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);

        

        // 开启位图上下文

        UIGraphicsBeginImageContext(rect.size);

        // 获取位图上下文

        CGContextRef context = UIGraphicsGetCurrentContext();

        // 使用color演示填充上下文

        CGContextSetFillColorWithColor(context, [color CGColor]);

        // 渲染上下文

        CGContextFillRect(context, rect);

        // 从上下文中获取图片

        UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext();

        // 结束上下文

        UIGraphicsEndImageContext();

        

        return theImage;

    }

  • 相关阅读:
    BroadcastReceiver 小结
    Android Manifest.xml 之 Intent-filter
    First Phone Interview
    XDK html development --- Cross Domain Request
    Github Git usage
    为节省内存,动态添加view布局和控件
    相似的概念
    让一个view 获得焦点
    ListView 关于减少耗时方法调用优化
    SearchView 分解设置属性
  • 原文地址:https://www.cnblogs.com/Keys/p/4785015.html
Copyright © 2020-2023  润新知