首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

UIScrollView的一步步实现1 简介1.1 工作原理1.2 UIScrollView常见的几个重要控件1.3 UIScrollView常见的重要属性1.4 手工代码实现拖动2 三个重要属性的进

1 简介 UIScrollView 是负责滚动的视图。苹果最强大的地方就在于其良好的UI展示,和UE体验。如果不会很好的使用UIScrollView,就等于丧失了苹果一般的法力。...当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容。 普通的 UIView 不具备滚动功能,不能显示过多的内容。...的滚动范围 contentOffset UIScrollView当前滚动的位置 contentInset 增加滚动视图四周的增加滚动范围 bounces 是否有弹簧效果,默认是开启的 scrollEnabled...滚动视图是否被分割成多个独立的页面 1.4 手工代码实现拖动 // 创建scrollView UIScrollView *scrollView = [[UIScrollView...决定了水平方向滚动距离 contentSize 的 height 决定了垂直方向滚动距离 2.3 contenInset contentInset是用来设置内边距。

1.6K60
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    iOS开发之UIScrollView无限滚动

    UIScrollView 的无限滚动主要应用在图片轮播器、欢迎界面等场景。首先需要说明的是,文本所讲的是一种"笨办法",但是好理解且容易实现,在图片不多的时候用它也无妨。...2、代码实现,主要分为:添加UIScrollView,添加显示图片,添加UIPageControl,然后监听UIScrollView的滚动,根据滚动的位置来设置UIPageControl,最重要的是对于滚动到两个边缘时要特殊处理一下...的代理方法,在该方法中改变UIPageControl并且处理边缘滚动 -(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {...//获取当前UIScrollView的位置 CGPoint offset = [scrollView contentOffset]; //算出滚动到第几页 int currentPage...setContentOffset:CGPointMake(SCREEN_WIDTH * (MAX_SIZE-2), 0) animated:NO]; //方法2,该方法要求设置contentSize时,

    1.7K100

    UIScrollView进阶技巧

    UIScrollView是iOS开发中经常用到的UI控件,像图片轮播之类的效果都可以用UIScrollView来实现,当然轮播什么的网上有很多教程了,我就不多说了。...列表上面是三个栏目按钮和轮播图片,向上滚动时,按钮和图片一起向上,按钮周边区域颜色渐变,然后在到指定位置时(这里是盖住导航栏之后)按钮停住不动,周边颜色也完全变成导航栏的颜色,列表数据还可以继续滚动。...其实也挺简单,重点是 contentInset这个属性。这个属性是UIScrollView的,用来指定内容边界,UITableView继承自UIScrollView,当然也含有这个属性。...因为之前设置了contentInset,所以这个offsetY一开始是等于-TableViewInsetTop的。menuBtnH是栏目按钮的高,barHeight是导航栏的高。...第三个效果就不是TableView了,而是个WebView,效果是向上滑动时隐藏底栏,向下时显示底栏。

    98240

    【IOS开发基础系列】UIScrollView专题

    滚动视图必须知道内容视图的大小,以便于知道什么时候停止;一般而言,当滚动出内容的边界时,它就返回了。         ...就是当用户滚动时,这些对象应该恰当的增加或者移除子视图。          因为滚动视图没有滚动条,它必须知道一个触摸信号是打算滚动还是打算跟踪里面的子视图。...另外一个比较动态的选择是UIScrollView的另一个属性contentInset,contentInset增加你在contentsize中指定的内容能够滚动的上下左右区域数量contentInset.top...showsHorizontalScrollIndicator     滚动时是否显示水平滚动条 showsVerticalScrollIndicator     滚动时是否显示垂直滚动条 bounces...当值是 YES 时,假如一开始是垂直或者是水平运动,那么接下来会锁定另外一个方向的滚动。

    65630

    iOS实例——滑动列表展现隐藏顶部视图

    引 项目中需要一个效果:下滚列表时顶部的自定义视图不移动,上移时隐藏顶部视图,提高列表的展现范围。...在此基础上海加了一个隐藏列表时的动态渐入渐出效果,如下: 实现 实现的要点是,顶部的视图要随着列表的滚动而滚动,且列表最上是可以滚动到屏幕顶部的,最下就是滚动到一个固定的位置就不再往下滚动了,至于渐变效果只要能控制滚动自然也能控制随着滚动去改变...,就必须获知列表的滚动效果,这里我们在自定义的顶部视图类中加一个UIScrollView属性,在初始化的时候就将我们的列表赋给这个属性(UITableView是UIScrollView的子类):...对于滚动的跟随,我们采用KVO键值观察(可以查看这篇博客来了解)来做。...第二件事是让顶部视图随着移动而渐变,当移动到最高时彻底透明,移动到最低时不透明,这个alpha值也是根据移动的值来计算的: - (void)updateSubViewsWithScrollOffset:

    1.9K10

    iOS-UIScrollerView

    ) CGSize contentSize 这个属性用来表示UIScrollerView内容尺寸,滚动范围(能滚多远) UIEdgeInsets contentInset 这个属性能够在UIScrollerView...的四周增加额外的滚动区域,一般用来避免scrollerView的内容被其他控件挡住 UIScrollerView无法滚动的原因 没有设置contentSize scrollEnabled = NO 没有收到触摸事件...*)scrollView{ NSLog(@"即将开始滑动内容时"); } - (void)scrollViewDidScroll:(UIScrollView *)scrollView{...@"点击状态栏是否可以回到顶部"); return YES; } //scrollViewShouldScrollToTop设置为YES,滚动视图在完成滚动到内容顶部时发送此消息 - (void...)scrollViewDidScrollToTop:(UIScrollView *)scrollView{ NSLog(@"滚动视图在完成滚动到内容顶部时发送此消息"); } UIScrollerView

    17910

    列表滑动展开隐藏头部HeaderView

    对于按钮移动的动画就没有去花时间还原了,毕竟这里主要是为了实现滚动压缩、展开Header,动画不讨论。 ? 实现思路 如图所示: ?...ScrollHeader占据屏幕上方,高度为展开后的高度 UITableView占据整个屏幕,这样可以完全滚动。...另一种效果是把topView与bottomView上下连接在一起,也就是没有覆盖关系,然后当bottomView向上滑时topView从屏幕外滑入屏幕内。这个读者可以尝试着实现一下。...由于我的ScrollHeader继承的是UIView,所以为了处理滑动,为其设置一个UIScrollView @property (nonatomic, strong) UIScrollView *headerScrollView...; 这个属性的作用就是获得UITableView对应的scrollView,因为UITableView本身是继承UIScrollView的,所以在初始化ScrollHeader的时候可以这么写: MyScrollHeader

    3.4K20

    他们主动布局(autolayout)环境的图像编辑器

    能够对图片进行放缩和 拖动,已更改圆形裁剪框圈定的图片部分。...同一时候支 持横竖屏。这比QQ的图片选取页面又复杂了一些:QQ仅仅支持竖屏的情况,不须要 考虑横屏时的情况和横竖屏切换的问题。 以下具体讨论。...效果图例如以下图所 示: 用户在拖动、放缩时要保证圆环区域所有被图片所覆盖。这样才干确保裁剪出 来的照片刚好可以撑满整个圆形区域。同一时候,由于我们支持横屏布局。...的意义和作用: 图6.UIScrollView的contentSize和contentInset属性示意图 contentSize是你在scrollView中要展示的内容...你仅仅需设置放缩的最大和最小倍数, 然后在代理函数(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView 中返回要缩放的view就可以

    81010
    领券