我有内的量,高度是可变的许多元素此滚动视图。
我想知道,如果有知道在滚动视图的最后一个元素的美星的一种方式,而无需添加了在滚动视图的所有元素的高度。
我试图lastViewInScrollView.frame.maxY,这是不正确的。
我有内的量,高度是可变的许多元素此滚动视图。
我想知道,如果有知道在滚动视图的最后一个元素的美星的一种方式,而无需添加了在滚动视图的所有元素的高度。
我试图lastViewInScrollView.frame.maxY,这是不正确的。
这完全是数学,因为你说你不想要的最后一个元素之前添加的所有元素,这就是好了,现在用滚动视图的工作进行到底。 按照苹果的文档( https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/AutolayoutPG/WorkingwithScrollViews.html ),以正确地与滚动视图处理必须添加一个UIView(让说MyView的)然后你的组件。
假设你有滚动视图包含10的UIView(视图1,视图2,... view10)不同的高度和你的viewController是象下面这样:
与UIScrollView中的约束处理:
scollview约束:
一),从而导致上海华:0 //上海华(VC MAINVIEW)
b)中后,以上海华:0
c)中顶部上海华:0
d)底部至上海华:0
保持一个UIView(说MyView的)滚动视图中,并给consraints:
一),从而导致scollView:0
B)后到scollView:0
c)中顶部scollView:0
d)底部scollView:0
E)相等的宽度的MAINVIEW //假设如你不希望否则横向滚动,不给
现在,在MyView的加厂景,添导致MyView的约束上一个):0
b)中后,以MyView的:0
c)中顶部MyView的:0
d)恒定高度= height1
现在,view1.frame =(0,0,SCW,height1)// SCW是scrollViewWidth,并且你不需要设置这个框架。 我只是写在这里描述你厂景的框架。
现在,在MyView的添加视图2,加约束上
一),从而导致MyView的:0
b)中后,以MyView的:0
c)中顶部VIEW1:0
d)恒定高度=身高2
:
:
:
:
:
重复同样以高达view9,
现在,在MyView的增加view10,加约束上
一),从而导致MyView的:0
b)中后,以MyView的:0
c)中顶部view9:0
d)恒定高度=身高2
E)底部到MyView的:0
如果你面临的问题如何设置框架,特别是当他们走出控制器视图,然后选择VC后藤其属性和设置大小自由设定和VC的任何高度,使您可以设置所有的帧。 DONT'T忘记设置该VC大小来INFERED。
注意:千万不要静态高度滚动视图,滚动视图本身将通过计算其组件的高度计算其高度,但要记住,你必须给最上面的部分顶层constaraint到它的父和最下部分底部的组件和高度所有组件(这里的UIView)。
试试这个上面的程序是新的我ScrollView的好习惯。
如何设置SCOLLVIEW即动力高度的一些看法正在改变那里HEIGHTS根据THERE目录
让我们在同上面的例子中,有三个视图(aView,bView,CVIEW),并有高度可变的(因为我们不知道在设计过程中他们的身高,但我们知道最小高度让哈,HB,HC respec。),他们是在视图2。
视图2 Contriants已经被我们给定的,现在改由它的高度关系equalto(=)
来greaterthanequalto(>=)
aView的约束:
一个)顶部视图2:0
b)中导致视图2:0
c)中后向视图2:0
d)恒定高度:哈,与关系greaterthanequalto(>=)
bView的约束:
一个)顶部aView:0
b)中导致视图2:0
c)中后向视图2:0
d)恒定高度:HB,与关系greaterthanequalto(>=)
CVIEW的约束:
一个)顶部bView:0
b)中导致视图2:0
c)中后向视图2:0
d)恒定高度:HC,具有关系greaterthanequalto(>=)
E)底部视图2:0
注:当你面对的滚动视图,你必须做同样的,如果你的组件是动态的,给予高度(保持minimun高度)的关系greaterthanequalto(>=)
如果您的组件有静态的高度给关系equalto(=)