zoukankan      html  css  js  c++  java
  • 纵向滚动视图操作

    我们知道TableView有很多条记录,但是TableView因为可以滚动,因此,他可以占用很小的视图空间,可是,对于那些不使用TableView的情况该怎么办哪?我们想到了UIScrollView,他就是一个可以滚动的视图,当他的高度超过了iphone的屏幕高度的时候,就会在屏幕的右侧出现一个滚动轴,然后我们就可以在纵向滑动,来查看原本在iphone屏幕之外的内容。

    UIScrollView可以看成是要给是一个UIView容器,里面可以放置一些内容可以动态改变的视图,比如:uiTableView控件。

    仅仅有这些还是不够的,当UIScrollView容器内的UIView子对象实例的高度改变后,我们还需要动态的改变UIScrollView控件的高度。

    参考代码如下所示:

    -(void)ResetScrollViewContentHeight

    {

      int maxY =0;

      int maxSubViewHeight=0;

      for (UIView *view in m_scrollView.subviews)

      {

        if (maxY<view.frame.origin.y

        {

          maxY = view.frame.origin.y;//找到Y坐标最大值

          //计算最下面的控件的底部的Y坐标,也就是UIScrollVIew空间的高度

          maxSubViewHeight  = maxY +view.frame.size.height;

        }

      }

      CGSize contentSize = CGSizeMake(320, maxSubViewHeight);

      m_scrollView.contentSize = contentSize;//改变他的高度

    }

    到这里,你基本就完成了相应的操作,继续运行App,你就可以发现可以手动的滚动视图了。

    从上面的知识可以得出,我们可以将UIScrollView看成是一个Content内容(高度)可以动态改变的UIView的子类的容器控件。这样,我们就可以动态的使用代码或者操作触发事件并以此改变UIScrollview控件的高度。c

    THE END !

  • 相关阅读:
    maven 笔记
    面试题53:在排序数组中查找数字
    面试题52:两个链表的第一个公共节点
    面试题51:数组中的逆序对
    面试题50_2:字符流中第一个只出现一次的字符
    面试题50:第一个只出现一次的字符
    面试题49:丑数
    面试题48:最长不含重复字符的连续子字符串
    面试题47:礼物的最大值
    面试题8:二叉树的下一个节点
  • 原文地址:https://www.cnblogs.com/xingchen/p/2142724.html
Copyright © 2011-2022 走看看