• UIScrollView的使用2个妙招:键盘遮挡,View 支持滚动


     UIScrollView的相关概念

    首先介绍下UIScrollView的相关概念

    contentSize是scrollview可以滚动的区域,比如frame = (0 ,0 ,320 ,480) contentSize = (320 ,960),代表你的scrollview可以上下滚动,滚动区域为frame大小的两倍。
    contentOffset是scrollview当前显示区域顶点相对于frame顶点的偏移量,比如上个例子你拉到最下面,contentoffset就是(0 ,-480),也就是y偏移了- 480(注意向下拉,偏移是负数,向上才是正数,这个我测试过的)
    contentInset是scrollview的contentview的顶点相对于scrollview的位置,例如你的contentInset = (0 ,100),那么你的contentview就是从scrollview的(0 ,100)开始显示

    (以上引用来自http://www.cnblogs.com/try2do-neo/archive/2011/10/13/2210532.html) 

    概念说完了,看下面的用处
    1.键盘遮挡。
    有些输入框在View最下面,键盘调出来的时候,需要将输入框调整到可见区。如果View里控件少,那么直接修改frame就能实现,自己加点动画,效果可还不错。
    但是如果控件很多,那么一个一个控件都修改frame太繁琐。如果将这些控件放到一个UIScrollView里,那么修改UIScrollView里的ContentOffSet的值。
    比如默认情况下,ContentOffSet(0,0),键盘输入的时候,设置ScrollView的偏移为(0,150)(整个画面向上移动150的像素)等输入完成的时候再设置ScrollView为(0,0)
    2.View 支持滚动
    让整个View支持上下滚动。通过xib设置的View不支持Scroll,使用起来不同上线滚动。用户体验不太好。为了让普通的View也支持Scroll有2种办法
     1。将这个View放在TableView里.
     2。 在View里添加一个ScrollView,将所有其它的控件全放在这个ScrollView里。放在View里有个技巧。需要设置contentSize,比如你的View大小是(320,480),那么ScrollView的大小需要设置为(320,481),多一个像素出来,让其支持滚动,还是很好的。
  • 相关阅读:
    移动端的头文件
    时间倒计时
    H5 判断应用是否打开或是下载
    创建 XMLHttpRequest 对象
    JS 发送POST
    总结题
    uploadify 插件,去了进度条
    PC 拖动 以百分比计算
    pc 拖动效果,拖动带范围
    spring.net 在demo中的分析
  • 原文地址:https://www.cnblogs.com/likwo/p/2219983.html
Copyright © 2020-2023  润新知