ios弹性头部

很久没写博客了,见天有点时间来写下,一直觉得弹性头部很炫,看起来高大上,写起来蛮简单的

层次分析

如上图,一共有3层,最底部是图像层,中间是scrollView或者它的子类,最上层是scrollView上面添加的视图

主要代码

scrollView的代理方法

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    NSLog(@"%@",NSStringFromCGPoint(scrollView.contentOffset));
    if (scrollView.contentOffset.y<=0) {
         self.imageView.frame = CGRectMake((scrollView.contentOffset.y *ScreenWith/200)/2, 0, ScreenWith - scrollView.contentOffset.y *ScreenWith/200, 200-scrollView.contentOffset.y);
    }else {
        [scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, 0)];
    }
}

通过scrollView滑动时的偏移量的变化来改变图片视图的大小就ok~,由于很简单就不贴代码了~

动态图:

时间: 2025-01-01 17:05:29

ios弹性头部的相关文章

iOS创建头部视图

//创建头部视图 +(instancetype)headerViewWithTableView:(UITableView *)tableView{ return [[self alloc]initWithTableView:tableView]; } -(instancetype)initWithTableView:(UITableView *)tableView{ static NSString * indentifier = @"header"; GYLHeaderView * h

iOS中文版资源库,非常全

目录 入门 库和框架 音频 动画 Apple TV 桥接 缓存 Core Data 图表 数据库 硬件 动作 蓝牙 位置 iBeacon HUD 事件总线( EventBus ) 文件 JSON 布局 日志 地图 媒体 图片 视频 PDF 消息 网络 推送通知 Passbook 权限 文本 浏览 / 介绍 / 教程 URL Scheme UI Websocket 代码质量 分析 支付 产品化工具 实用工具 安全 安装项目 依赖 / 包管理 测试 测试驱动开发(TDD) / 行为驱动开发(BDD)

iOS中文版资源库

我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理.awesome-ios 就是 vsouza 发起维护的 iOS 资源列表,内容包括:框架.组件.测试.Apple Store.SDK.XCode.网站.书籍等.Swift 语言写成的项目会被标记为 ★ ,AppleWatch 的项目则会被标记为 ▲. Awesome 系列虽然挺全,但基本只对收录的资源做了极为简要的介绍,如果有更详细的中文介绍,对相应开发者的帮助会更大.这也是我们发起这个开源项目的初衷.

【iOS开发-62】自定义cell制作团购页面、顶部图片轮播、底部模拟加载更多功能,核心是练习代理模式

(1)效果 (2)案例源代码免费下载 团购页面+iOS源代码+头部广告轮播+底部加载更多 (3)补充 在源代码中,有一处瑕疵:就是因为是单线程,所以在上下拖动页面的时候,上面的图片轮播会停止.所以我们需要兼顾,解决方案,把定时器加到当前的runLoop中. 即在WPTgHeaderView.m的playOn方法中添加一行代码: -(void)playOn{ timer=[NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector

html头部meta属性大全——各种奇葩属性设置大归类

常用通用属性: <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <!--设置屏幕缩放--> <link rel="dns-prefetch" href="//www.zhoulujun.cn"> <!--设置dns缓存-->

iOS-资源大全

本文由 伯乐在线 - ARIGATO 翻译,黄利民 校稿.未经许可,禁止转载!英文出处:vsouza.欢迎加入翻译组. 这是个精心编排的列表,它包含了优秀的 iOS 框架.库.教程.XCode 插件.组件等等. 这个列表分为以下几个部分:框架( Frameworks ).组件( Components ).测试( Testing )和其他的开源项目,免费的和付费的服务.每个部分中的项目没有先后顺序,均是按照提交的先后顺序排列的. Swift 语言写成的项目会被标记为 ★ ,AppleWatch 的

移动端兼容处理

首先上一段判断android和ios的js代码 function navigator(){ var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端 var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端 if(isAndroid){ //安卓 }; if(isiO

css公共类

/*iOS弹性滚动*/ .scrolling{ position: absolute; width: 100%; height:100%; overflow-x:hidden; overflow-y:auto; -webkit-overflow-scrolling: touch ;} /*解决ios 安卓 一像素边线问题 解决办法使用0.5边线*/ .hairline-top{position: relative;border:none;} .hairline-top::before{conte

ios UItableView,UITableViewHeaderFooterView分组头部的重用机制,简单地仿射变换CGAffineTransform

怎样设置包括第一栏在内相同高度的section(小技巧,虽然容易但容易忽略) *第一步,在viewdidload里将尾部设为0,table.sectionFooterHeight = 0;(代理方法)- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{ return 0; }虽然也可以设置尾部高度,但是设置后没有效果 第二步,调用tableView的代理方法- (CGF