iOS:UIWebView scrollView 的分页滑动问题
最近在弄一个native webview+html的项目,感觉这种尝试还是挺不错的,特被是适合内容类app。如杂志、电子书等。其实native搭的就是一个框架,主体还是在html的内容上,所以花在html的功夫要十分多。
要做到webview的分页的效果,主要是利用UIwebView里面的scrollView的属性。
webview里面有一个分页模式的功能,设置
webView.scrollView.pagingEnabled = YES;
即可。这样设置的话,你的webview可以按分页滚动,滚动的距离(页宽)就是按照scrollView的size来设定。如果你要自己定义滚动页面大小的话可以通过设置scrollView的size去改变。例如我的项目中就要设置成984,而不是1024(for ipad)。我 就设置如下:
self.webView.scrollView.frame = CGRectMake(0, 0, 984, 748);//for 横屏
还有要设置:
webView.scrollView.clipsToBounds = NO; //这样超出范围scrollView.frame 也会显示,即整个webView还是会正常显示。
这样就搞定了。
如果你重新设置的scrollView变小了,那响应的响应就变小了,如果有需要的话就重写UIScrollView所在的parentView的hittest事件,在其他区域的事件返回值为UIScrollView对象,这样用户感觉整个屏幕都是UIScrollView在响应了。
此外,scrollView的contentOffset属性也蛮重要的,它表示当前scrollView的原点到content View的位移,可以当做分页里面的地位点,页码数来使用。
contentSize就是可滚动的最大区域了,这个可以表示总页数。
上面的方法应该够用了,如果有更特殊的需要,就把分页功能关闭,自己在各种动作响应事件里面设置contentOffset也可以实现分页,但要达到官方的那种效果的话动作需要处理得很协调,课设置加速、减速的速率之类的。
iOS:UIWebView scrollView 的分页滑动问题的更多相关文章
- 【iOS开发-55】图片轮播案例:scrollView的分页、滚动栏、利用代理控制定时器和Page Control以及多线程问题
案例: (1)用storyboard布局,这里用了三样东西. --UIScrollView就是我们准备存放滚动图片的容器. --Page Control就是控制页数的那几个小点点.能够设置有多少个点. ...
- ios7中使用scrollview来横向滑动图片,自动产生偏移竖向的偏移 问题
ios7中使用scrollview来横向滑动图片,自动产生偏移竖向的偏移 问题 如图红色为scrollview的背景色,在scrollview上加了图片之后,总会有向下的偏移 设置conten ...
- iOS UIWebView 获取内容实际高度,关闭滚动效果
本文转载至 http://my.oschina.net/Khiyuan/blog/341535 iOS UIWebView 获取内容实际高度,关闭滚动效果 近期做东西,将 UIWebView 嵌套 ...
- Android ScrollView监听滑动到顶部和底部的两种方式(你可能不知道的细节)
Android ScrollView监听滑动到顶部和底部,虽然网上很多资料都有说,但是不全,而且有些细节没说清楚 使用场景: 1. 做一些复杂动画的时候,需要动态判断当前的ScrollView是否滚动 ...
- SwipeMenuListView在ScrollView里上下滑动导致菜单不能显示完全的bug解决方法
这是因为上下滑动的时候,事件被ScrollView截获了,这时候应该禁止ScrollView截获上下滑动事件,解决方法如下 public class NoRollSwipeMenuListView e ...
- (转)ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
ViewPager,ScrollView 嵌套ViewPager滑动冲突解决 本篇主要讲解一下几个问题 粗略地介绍一下View的事件分发机制 解决事件滑动冲突的思路及方法 ScrollView 里面嵌 ...
- ios UIWebView截获html并修改便签内容(转载)
ios UIWebView截获html并修改便签内容 博客分类: iphone开发iphone开发phoneGap uiwebviewstringByEvaluatingJavaScriptFromS ...
- IOS UIWebView截获html并修改便签内容,宽度自适应
需求:混合应用UIWebView打开html后,UIWebView有左右滚动条,要去掉左右滚动效果: 方法:通过js截获UIWebView中的html,然后修改html标签内容: 实例代码: 服 ...
- ios UIWebView截获html并修改便签内容
需求:混合应用UIWebView打开html后,UIWebView有左右滚动条,要去掉左右滚动效果: 方法:通过js截获UIWebView中的html,然后修改html标签内容: 实例代码: 服务器端 ...
随机推荐
- Spark Streaming的wordcount案例
之前测试的一些spark案例都是采用离线处理,spark streaming的流处理一样可以运行经典的wordcount. 基本环境: spark-2.0.0 scala-2.11.0 IDEA-15 ...
- kinect2 body joints 的25个点
JointType_SpineBase = 0, JointType_SpineMid = 1, JointType_Neck = 2, J ...
- nodejs在cmd提示不是内部或外部命令解决方法
今天用cmd安装个库,结果发现node不是内部命令,于是搜索了下解决方法,发现原来我上次重装nodejs换了个安装位置,path环境变量忘改了. 找到变量值中node的安装地址,比如C:develop ...
- MVC创建
[1]创建ASP.NET_MVC应用程序 1>新建项目>web>Visual Studio 2012>ASP.NET MVC4 Web应用程序 2>填写名称,位置 ...
- Java中泛型 类型擦除
转自:Java中泛型是类型擦除的 Java 泛型(Generic)的引入加强了参数类型的安全性,减少了类型的转换,但有一点需要注意:Java 的泛型在编译器有效,在运行期被删除,也就是说所有泛型参数类 ...
- laravel5.2/laravel5.3入门指南 Windows 上快速安装并运行 Laravel 5.x
1 首先要搭建本地服务器环境推荐phpstudy2016及wampServer3.0.6 下载链接可参考 http://www.cnblogs.com/zzcit/p/5823742.html 注意一 ...
- 【转发】彻底理解 JS 中 this 的指向
为什么要学习this?如果你学过函数式编程,面向对象编程,那你肯定知道干什么用的,如果你没有学过,那么暂时可以不用看这篇文章,当然如果你有兴趣也可以看看,毕竟这是js中必须要掌握的东西. 例子1: f ...
- ASP.NET MVC 实现AJAX跨域请求的两种方法
通常发送AJAX请求都是在本域内完成的,也就是向本域内的某个URL发送请求,完成部分页面的刷新.但有的时候需要向其它域发送AJAX请求,完成数据的加载,例如Google. 在ASP.NET MVC 框 ...
- php基础的第一天 任务点滴,event对象方法概括 ing....
day1 任务 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <t ...
- MSXML insertBefore(IXMLDOMNode *newChild, VARIANT refChild) 传参
在xml操作中经常会用到在某一个节点后或前面插入一个节点,MSXML DOM 中使用的函数是insertBefore(IXMLDOMNode *newChild, VARIANT refChild): ...