zoukankan      html  css  js  c++  java
  • 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;

    }

  • 相关阅读:
    无法加载模块 TP3.2
    always_populate_raw_post_data
    关于(void**)及其相关的理解
    面向对象设计原则
    数据对齐总结
    C++ POD类型
    do..while(false)的用法总结
    c++为什么定义了析构函数的类的operator new[]传入的参数会多4字节?
    C++ new new[]详解
    【转】C内存操作函数
  • 原文地址:https://www.cnblogs.com/Keys/p/4785015.html
Copyright © 2011-2022 走看看