一种首页幻灯展示及操作方法及装置制造方法及图纸

技术编号:13880441 阅读:64 留言:0更新日期:2016-10-23 03:46
本发明专利技术属于互联网移动端应用开发领域,是一种外观上的用户体验。具体涉及一种首页幻灯展示及操作方法及装置。通过自定义的底部滑动视图,并所有幻灯视图都添加在滑动视图上,能够在用户手指拖拽结束后,在首页同时显示多附幻灯片,本发明专利技术能够显示多张图片并支持滑动与首尾轮换播放,以复用的方式展示给用户流畅的体验。

【技术实现步骤摘要】

本专利技术属于互联网移动端应用开发领域,是一种外观上的用户体验。具体涉及一种首页幻灯展示及操作方法及装置
技术介绍
首页幻灯模式是一种在首页上用图片轮换播放的形式给应用推荐内容。为了针对iPad屏幕尺寸较宽的特点,采用与世面幻灯不同的多图片幻灯方式,页面显示多张图片。用户能观看到更多信息与更好的体验及图片比例。
技术实现思路
本专利技术主要是解决现有技术所存在的技术问题;提供了一种能够显示多张图片并支持滑动与首尾轮换播放,以复用的方式展示给用户流畅的体验的一种首页幻灯展示及操作方法及装置。本专利技术的上述技术问题主要是通过下述技术方案得以解决的:一种首页幻灯展示及操作方法,包括:S1、在首页展示N幅幻灯视图,其中N大于等于2,具体包括:S1.1、初始化视图并通过http协议从网络获取json格式数据,解析成NSObject对象,所述json格式数据为JavaScript Object Notation格式数据,包括图片下载地址与标题。S1.2、根据获取的json格式网络数据刷新幻灯视图,幻灯视图使用自定义的底部滑动视图,重载了底部滑动视图的方法,所有幻灯视图都添加在滑动视图上。S2、当前显示视图能够被用户滑动后更新为下一组显示的N幅的幻灯
视图,具体包括:S2.1、在S1.2中根据手指拖动的位置计算底部滑动视图的ContentOffset的值,最终页面停留的位置,其中,ContentOffset为系统控件UIScrollView的属性变量。S2.2、设置pageControl的数量,更新底部滑动视图的视图内容。S2.3、手指拖拽结束后清空当前视图并显示滑动后停止的最终视图。优选地,所述S1.2中,自定义底部滑动视图的具体步骤包括:S1.21、创建一个自定义滑动视图DYScrollView继承自iOS系统的UIScrollView视图。S1.22、实现UIScrollView的代理协议UIScrollViewDelegate,并在初始化时将系统UIScrollView的代理设为自身。S1.23、定义变量PageWidth和PageHeight用于标识每个页面的滑动距离。S1.24、定义一个变量DYPagingEnabled标识,该标识表示是否开启整页滑动。S1.25、重载UIScrollView代理协议方法,使手指拖拽的距离刚好为变量PageWidth和PageHeight设定的滑动距离。优选地,所述S1.25中,重载UIScrollView协议方法的具体步骤包括:S1.251、当手指将要开始拖拽时,控件scrollViewWillBeginDragging用变量dragDistance记录手指拖拽的位移。S1.252、当手指将要结束拖拽时,控件scrollViewWillEndDragging计算手指拖拽结束时的差值偏移量。S1.253、当手指结束拖拽时,惯性控件scrollViewDidEndDecelerating在手指结束拖拽时的移动惯性为0的时候执行计算页面的实际偏移量。S1.254、当手指结束拖拽时的拖拽动画结束时,控件
scrollViewDidEndScrollingAnimation在滑动动画停止时执行计算页面实际偏移量。S1.255、当手指结束缩放手势时控件scrollViewDidEndZooming在视图缩放结束后执行计算页面实际偏移量。S1.256、控件scrollViewDidEndDragging、控件scrollViewDidEndDecelerating、控件scrollViewDidEndScrollingAnimation、控件scrollViewDidEndZooming系统协议方法中实现计算scrollView页面实际偏移量.使手指拖拽的距离刚好为变量PageWidth和PageHeight设定的页面长度,具体方法是:A、计算单个页面长度pageLength=根据设计的变量PageWidth和PageHeight乘上缩放比例zoomScale。B、计算需要移动的页面索引index=当前滑动偏移量/页面长度pageLength.取绝对值并根据拖动速率判断最终的页面所索引。C、计算页面的实际偏移量=需要移动的页面索引index*单个页面长度pageLength.并判断是否超出显示范围。优选地,所述S2.3中,清空当前视图并更新显示的具体方法是:S2.31、设置定时器,用于每隔一段时间执行滑动方法使滑动视图移动到指定位置,清空之前的视图,其中,执行滑动方法使滑动视图移动到指定位置是通过设置scrollView的ContentOffset属性来实现。S2.32、关闭定时器,准备显示的数据,并比较当前设定的显示视图数量N与视图总数量M的大小:若当前视图总数量M大于显示视图数量N;则在临时数据中,将尾部数据插入临时数组顶部,将头部数据添加临时数组尾部,从而组成循环的结构。若当前视图总数量M小于显示视图数量N;则将滑动视图scrollView的
ContentSize属性设为CGRectZero即为0,使视图不能滑动,并将滑动视图中的元素居中显示。S2.33、计算并设置底部滑动视图的长度,滑动视图的长度=显示视图数量N*单个显示视图长度;滑动视图的长度用于调整整个滑动的长度与能显示在滑动视图上的显示视图的数量,滑动视图的长度小于(显示视图的数量*单个显示视图的长度),则超出滑动视图的显示视图将不能显示。S2.34、调整显示视图的位置:如果显示视图数量小于N,将显示视图等分在滑动视图中心位置;如果显示视图数量大于或等于N,将第一个显示视图放在滑动视图中心位置。S2.35、当手指拖拽结束后,计算当前的索引位置,并比较当前设定的显示视图数量N与索引的大小:当索引小于N时,说明显示视图向前移动了,跳转到尾部;当索引大于或等于N时,说明显示视图向后移动超过最后一条数据,跳转到头部。S2.36、滑动完毕后开启定时器,即在手指拖拽的时候关闭定时器,在拖拽结束后开启定时器,在用户不操作时由定时器执行自动滑动。一种首页幻灯展示及操作装置,包括:显示模块:在首页展示N幅幻灯视图,其中N大于等于2,具体包括:初始化单元:初始化视图并通过http协议从网络获取json格式数据,解析成NSObject对象,所述json格式数据为JavaScript Object Notation格式数据,包括图片下载地址与标题;更新显示单元:根据获取的json格式网络数据刷新幻灯视图,幻灯视图使用自定义的底部滑动视图,重载了底部滑动视图的方法,所有幻灯视图都添加在滑动视图上;视图滚动模块:将当前显示视图根据用户滑动后更新为下一组显示的N
幅的幻灯视图,具体包括:位置计算单元:在更新显示单元显示幻灯视图时,根据手指拖动的位置计算底部滑动视图的ContentOffset的值,最终页面停留的位置,所述ContentOffset为系统控件UIScrollView的属性变量,ContentOffset值的改变在自定义视图中实现计算方法;主题更新单元:设置OS系统控件pageControl的数量,新底部滑动视图的系统控件item;清空更新视图单元:在手指拖拽结束后清空当前视图并显示滑动本文档来自技高网
...

【技术保护点】
一种首页幻灯展示及操作方法,其特征在于,包括:S1、在首页展示N幅幻灯视图,其中N大于等于2,具体包括:S1.1、初始化视图并通过http协议从网络获取json格式数据,解析成NSObject对象,所述json格式数据为JavaScript Object Notation格式数据,包括图片下载地址与标题;S1.2、根据获取的json格式网络数据刷新幻灯视图,幻灯视图使用自定义的底部滑动视图,重载了底部滑动视图的方法,所有幻灯视图都添加在滑动视图上;S2、当前显示视图能够被用户滑动后更新为下一组显示的N幅的幻灯视图,具体包括:S2.1、在S1.2中根据手指拖动的位置计算底部滑动视图的ContentOffset的值,最终页面停留的位置,其中,ContentOffset为系统控件UIScrollView的属性变量;S2.2、设置pageControl的数量,更新底部滑动视图的视图内容;S2.3、手指拖拽结束后清空当前视图并显示滑动后停止的最终视图。

【技术特征摘要】
1.一种首页幻灯展示及操作方法,其特征在于,包括:S1、在首页展示N幅幻灯视图,其中N大于等于2,具体包括:S1.1、初始化视图并通过http协议从网络获取json格式数据,解析成NSObject对象,所述json格式数据为JavaScript Object Notation格式数据,包括图片下载地址与标题;S1.2、根据获取的json格式网络数据刷新幻灯视图,幻灯视图使用自定义的底部滑动视图,重载了底部滑动视图的方法,所有幻灯视图都添加在滑动视图上;S2、当前显示视图能够被用户滑动后更新为下一组显示的N幅的幻灯视图,具体包括:S2.1、在S1.2中根据手指拖动的位置计算底部滑动视图的ContentOffset的值,最终页面停留的位置,其中,ContentOffset为系统控件UIScrollView的属性变量;S2.2、设置pageControl的数量,更新底部滑动视图的视图内容;S2.3、手指拖拽结束后清空当前视图并显示滑动后停止的最终视图。2.根据权利要求1所述的一种首页幻灯展示及操作方法,其特征在于,所述S1.2中,自定义底部滑动视图的具体步骤包括:S1.21、创建一个自定义滑动视图DYScrollView继承自iOS系统的UIScrollView视图;S1.22、实现UIScrollView的代理协议UIScrollViewDelegate,并在初始化时将系统UIScrollView的代理设为自身;S1.23、定义变量PageWidth和PageHeight用于标识每个页面的滑动距离;S1.24、定义一个变量DYPagingEnabled标识,该标识表示是否开启整
\t页滑动;S1.25、重载UIScrollView代理协议方法,使手指拖拽的距离刚好为变量PageWidth和PageHeight设定的滑动距离。3.根据权利要求1所述的一种首页幻灯展示及操作方法,其特征在于,所述S1.25中,重载UIScrollView协议方法的具体步骤包括:S1.251、当手指将要开始拖拽时,控件scrollViewWillBeginDragging用变量dragDistance记录手指拖拽的位移;S1.252、当手指将要结束拖拽时,控件scrollViewWillEndDragging计算手指拖拽结束时的差值偏移量;S1.253、当手指结束拖拽时,惯性控件scrollViewDidEndDecelerating在手指结束拖拽时的移动惯性为0的时候执行计算页面的实际偏移量;S1.254、当手指结束拖拽时的拖拽动画结束时控件scrollViewDidEndScrollingAnimation在滑动动画停止时执行计算页面实际偏移量;S1.255、当手指结束缩放手势时控件scrollViewDidEndZooming在视图缩放结束后执行计算页面实际偏移量;S1.256、控件scrollViewDidEndDragging、控件scrollViewDidEndDecelerating、控件scrollViewDidEndScrollingAnimation、控件scrollViewDidEndZooming系统协议方法中实现计算scrollView页面实际偏移量.使手指拖拽的距离刚好为变量PageWidth和PageHeight设定的页面长度,具体方法是:A、计算单个页面长度pageLength=根据设计的变量PageWidth/PageHeight乘上缩放比例zoomScale;B、计算需要移动的页面索引index=当前滑动偏移量/页面长度
\tpageLength.取绝对值并根据拖动速率判断最终的页面所索引;C、计算页面的实际偏移量=需要移动的页面索引index*单个页面长度pageLength.并判断是否超出显示范围。4.根据权利要求1所述的一种首页幻灯展示及操作方法,其特征在于,所述S2.3中,清空当前视图并更新显示的具体方法是:S2.31、设置定时器,用于每隔一段时间执行滑动方法使滑动视图移动到指定位置,清空之前的视图,其中,执行滑动方法使滑动视图移动到指定位置是通过设置scrollView的ContentOffset属性来实现;S2.32、关闭定时器,准备显示的数据,并比较当前设定的显示视图数量N与视图总数量M的大小:若当前视图总数量M大于显示视图数量N;则在临时数据中,将尾部数据插入临时数组顶部,将头部数据添加临时数组尾部,从而组成循环的结构;若当前视图总数量M小于显示视图数量N;则将滑动视图scrollView的ContentSize属性设为CGRectZero即为0,使视图不能滑动,并将滑动视图中的元素居中显示;S2.33、计算并设置底部滑动视图的长度,滑动视图的长度=显示视图数量N*单个显示视图长度;滑动视图的长度用于调整整个滑动的长度与能显示在滑动视图上的显示视图的数量,滑动视图的长度小于(显示视图的数量*单个显示视图的长度),则超出滑动视图的显示视图将不能显示;S2.34、调整显示视图的位置:如果显示视图数量小于N,将显示视图等分在滑动视图中心位置;如果显示视图数量大于或等于N,将第一个显示视图放在滑动视图中心位置;S2.35、当手指拖拽结束后,计算当前的索引位置,并比较当前设定的显示视图数量N与索引的大小:当索引小于N时,说明显示视图向前移动了,跳转到尾部;当索引大于或等于N时,说明显示视图向后移动超过最后一条数据,跳转到头部;S2.36、滑动完毕后开启定时器,即在手指拖拽的时候关闭定时器,在拖拽结束后开启定时...

【专利技术属性】
技术研发人员:谢东华
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1