我在iOS中有一个以编程方式生成的集合视图,即它没有笔尖。然后将其注入页面的视图中。我正在使用Xamarin Studio和MVVM Cross。当我运行该应用程序时,将生成集合并将其注入正确的位置。但是,当我向下滚动并且滚动条到达集合视图的底部时,它将继续滚动,但是滚动条不在屏幕底部。
我认为集合视图未遵循将视图注入其的尺寸,因此其高度过高。我可以在代码中设置集合的高度吗?
编辑
好的,就像在使用MVVM一样,我找到了一种方法来实现我在问题中解释的内容。
我设法使收藏视图坚持注入视图的顶部和底部。我是通过使用Cirrious库Cirrious.FluentLayouts.Stuart Lodge http://slodge.blogspot.co.uk/2013/07/playing-with-constraints.html上的精彩文章来完成此操作的。有了这个,我消除了在集合视图上指定高度的必要,而是告诉它必须坚持父视图的顶部和底部。
例如
//Add constraints between collection view and its container in page
parentView.SubviewsDoNotTranslateAutoresizingMaskIntoConstraints();
parentView.AddConstraints(
collectionsView.AtTopOf(parentView,0),
collectionsView.AtBottomOf(parentView,0),
collectionsView.AtLeftOf(parentView,0),
collectionsView.AtRightOf(parentView,0)
);
最佳答案
好的,就像在使用MVVM一样,我找到了一种方法来实现我在问题中解释的内容。
我设法使集合视图坚持注入它的视图的顶部和底部。我是通过使用Cirrious库Cirrious.FluentLayouts.Stuart Lodge http://slodge.blogspot.co.uk/2013/07/playing-with-constraints.html上的精彩文章来完成此操作的。有了这个,我消除了在集合视图上指定高度的必要,而是告诉它必须坚持父视图的顶部和底部。
例如
//Add constraints between collection view and its container in page
parentView.SubviewsDoNotTranslateAutoresizingMaskIntoConstraints();
parentView.AddConstraints(
collectionsView.AtTopOf(parentView,0),
collectionsView.AtBottomOf(parentView,0),
collectionsView.AtLeftOf(parentView,0),
collectionsView.AtRightOf(parentView,0)
);
N.b.如果您正在处理nib文件(.xib)中已经存在的元素,那么如果要添加的约束开始冲突,则可能需要在添加约束之前添加以下行。
parentView.removeConstraints(constraints: parentView.Constraints)