博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS:UIWebView scrollView 的分页滑动问题
阅读量:5057 次
发布时间:2019-06-12

本文共 973 字,大约阅读时间需要 3 分钟。

  最近在弄一个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也可以实现分页,但要达到官方的那种效果的话动作需要处理得很协调,课设置加速、减速的速率之类的。

 

 

转载于:https://www.cnblogs.com/mybkn/archive/2012/11/30/2796766.html

你可能感兴趣的文章
存储开头结尾使用begin tran,rollback tran作用?
查看>>
Activity启动过程中获取组件宽高的五种方式
查看>>
java导出Excel表格简单的方法
查看>>
SQLite数据库简介
查看>>
利用堆实现堆排序&优先队列
查看>>
Mono源码学习笔记:Console类(四)
查看>>
Android学习路线(十二)Activity生命周期——启动一个Activity
查看>>
《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇03:暂停游戏》
查看>>
CPU,寄存器,一缓二缓.... RAM ROM 外部存储器等简介
查看>>
windows下编译FreeSwitch
查看>>
git .gitignore 文件不起作用
查看>>
Alan Turing的纪录片观后感
查看>>
c#自定义控件中的事件处理
查看>>
App.config自定义节点读取
查看>>
unity3d根据手机串号和二维码做正版验证
查看>>
二十六、Android WebView缓存
查看>>
django Models 常用的字段和参数
查看>>
linux -- 嵌入式linux下wifi无线网卡驱动
查看>>
SVN使用教程总结
查看>>
SQL中varchar和nvarchar有什么区别?
查看>>