以下图为例,图片,红色view和蓝色view是添加在scrollView上的,向上拖动,红色view停留在屏幕顶端不动,其它的继续滚动,向下拖动后,红色view跟着下来

代码如下:(注意的是scrollView中自动布局的设置问题)

 1 #import "ViewController.h"
2 @interface ViewController () <UIScrollViewDelegate>
3 @property (weak, nonatomic) IBOutlet UIScrollView *scrollView;
4 @property (weak, nonatomic) IBOutlet UIView *blueView;
5 @property (weak, nonatomic) IBOutlet UIView *redView;
6 @property (weak, nonatomic) IBOutlet UIImageView *imageView;
7 @end
8 @implementation ViewController
9 - (void)viewDidLoad {
10 [super viewDidLoad];
11 self.scrollView.contentSize = CGSizeMake(0, CGRectGetMaxY(self.blueView.frame));
12 }
13
14 - (void)scrollViewDidScroll:(UIScrollView *)scrollView
15 {
16 CGFloat imageH = self.imageView.frame.size.height;
17 CGFloat offsetY = scrollView.contentOffset.y;
18 if (offsetY >= imageH) {
19 //将红色控件添加到控制器View中
20 CGRect redFrame = self.redView.frame;
21 redFrame.origin.y = 0;
22 self.redView.frame = redFrame;
23 [self.view addSubview:self.redView];
24 }else {
25 //将红色控件添加到控制器scrollView中
26 CGRect redFrame = self.redView.frame;
27 redFrame.origin.y = 140;
28 self.redView.frame = redFrame;
29 [self.scrollView addSubview:self.redView];
30 }
31
32 // if (offsetY < 0) {
33 // CGFloat scale = 1 - (offsetY / 80);
34 // self.imageView.transform = CGAffineTransformMakeScale(scale, scale);
35 // }
36
37 CGFloat scale = 1 - (offsetY / 20);
38 scale = (scale >= 1) ? scale : 1;
39 self.imageView.transform = CGAffineTransformMakeScale(scale, scale);
40 }
41 @end

scrollView中内部控件的悬停的更多相关文章

  1. 论--如何通过代码解析plist文件创建对应的控制器,以及控制器中的控件

    通过懒加载把最初的plist文件加载后,根据plist文件文件中的目标控制器进行跳转,根据加载的plist文件中的plist_name加载将要跳转进去的控制器界面的控件等等. 以上根据target_v ...

  2. wxPython中基本控件学习

    wxPython工具包提供了多种不同的窗口部件,包括了本章所提到的基本控件.我们涉及静态文本.可编辑的文本.按钮.微调.滑块.复选框.单选按钮.选择器.列表框.组合框和标尺.对于每种窗口部件,我们将提 ...

  3. 轻松学习Asp.net中的控件

    C/S 结构,即大家熟知的客户机和服务器结构.它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销.目前大多数应用软件 ...

  4. 精通 WPF UI Virtualization (提升 OEA 框架中 TreeGrid 控件的性能)

    原文:精通 WPF UI Virtualization (提升 OEA 框架中 TreeGrid 控件的性能) 本篇博客主要说明如何使用 UI Virtualization(以下简称为 UIV) 来提 ...

  5. ScrollView垂直滚动控件

    ScrollView垂直滚动控件 一.简介 二.方法 1)ScrollView垂直滚动控件使用方法 1.在layout布局文件的最外层建立一个ScrollView控件 2.在ScrollView控件中 ...

  6. DataGridTemplateColumn 如何获取内部控件

    WPF中有时候我们不使用DataGridTextColumn 而使用用途更加宽广的DataGridTemplateColumn 但是用途多的东西当然也更复杂. 这里说下如何取DataGridTempa ...

  7. WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探

    原文:WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探         最近因为项目需要,开始学习如何使用WPF开发桌面程序.使用WPF一段时间之后,感 ...

  8. CSharpGL(26)在opengl中实现控件布局/渲染文字

    CSharpGL(26)在opengl中实现控件布局/渲染文字 效果图 如图所示,可以将文字.坐标轴固定在窗口的一角. 下载 CSharpGL已在GitHub开源,欢迎对OpenGL有兴趣的同学加入( ...

  9. WPF中Ribbon控件的使用

    这篇博客将分享如何在WPF程序中使用Ribbon控件.Ribbon可以很大的提高软件的便捷性. 上面截图使Outlook 2010的界面,在Home标签页中,将所属的Menu都平铺的布局,非常容易的可 ...

随机推荐

  1. 八叉树(Octree)Typescript 实现

    Demo GitHub export class Octree { // 父&子树 private parent_node: any; private children_nodes: Octr ...

  2. 【Five-Minute Share】“请先了解所使用的工具 ,磨刀不误砍柴工”

    数据是应用系统的血液,没有数据的系统应用价值是非常有限的.经过多年的观察发现,身边很多的程序开发人员在开发应用系统的时候,都是按照标准SQL语法及应用方法去进行数据库设计,并进行应用开发的,没有任何的 ...

  3. 项目随笔@Service("testService")-------第二篇

    在springmvc中使用注解已经司空见惯了,今天见到了@Service("xxx")这种形式,让我大吃一惊.原来在service后面可以加参数,作为该service的名字,在sp ...

  4. Pyhhon中一些常见的字符串操作.

    可变变量:list, 字典 不可变变量:元祖,字符串 字符串的操作(去掉空格, 切片, 查找, 连接, 分割, 转换首字母大写, 转换字母大小写, 判断是否是数字字母, 成员运算符(in / not ...

  5. 训练1-B

    杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍 ...

  6. 训练1-K

    一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢? Input 输入数据有若干组,每组数据包含二个整数a,b(0<a<10000, 10<b< ...

  7. 记录python爬取猫眼票房排行榜(带stonefont字体网页),保存到text文件,csv文件和MongoDB数据库中

    猫眼票房排行榜页面显示如下: 注意右边的票房数据显示,爬下来的数据是这样显示的: 网页源代码中是这样显示的: 这是因为网页中使用了某种字体的缘故,分析源代码可知: 亲测可行: 代码中获取的是国内票房榜 ...

  8. maven项目发布后访问jsp页面报错

    type Exception report message java.lang.NullPointerException description The server encountered an i ...

  9. 自学python到找到工作的心得

    先做个自我介绍,我13年考上一所很烂专科民办的学校,学的是生物专业,具体的学校名称我就不说出来献丑了.13年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望,我就退学 ...

  10. @value 注解获取属性文件中的值

    一.属性文件 db.properties name=jack 二.配置文件 applicationContext.xml <!-- 加载配置文件,该节点只能存在一个,所以用 * ,加载所有属性文 ...