ios - 如何利用约束 - FluentConstraints 和 FluentLayouts for Xamarin.iOS

标签 ios layout xamarin.ios constraints mvvmcross

我在 iOS 中有一个以编程方式生成的 Collection View ,即它没有 Nib 。然后它被注入(inject)到页面上的 View 中。我正在使用 Xamarin Studio 和 MVVM Cross。当我运行该应用程序时,将生成集合并将其注入(inject)正确的位置。但是,当我向下滚动并且滚动条到达 Collection View 的底部时,它继续滚动,但滚动条离开了屏幕底部。

我在想 Collection View 没有坚持我将它注入(inject)的 View 的尺寸,所以它的高度太高了。我可以在代码中设置集合的高度吗?

编辑

好的,因为我正在使用 MVVM,所以我找到了一种方法来实现我在问题中所解释的内容。

我已经设法让我的 Collection View 附着在它被注入(inject)的 View 的顶部和底部。我通过使用 Cirrious 库 Cirrious.FluentLayouts.Touch 完成了这项工作,这是来自 Stuart Lodge 的精彩帖子 http://slodge.blogspot.co.uk/2013/07/playing-with-constraints.html .有了这个,我就不再需要在 Collection View 上指定高度,而是告诉它坚持父 View 的顶部和底部。

例如

//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,所以我找到了一种方法来实现我在问题中所解释的内容。

我已经设法让我的 Collection View 附着在它被注入(inject)的 View 的顶部和底部。我通过使用 Cirrious 库 Cirrious.FluentLayouts 完成了此操作。Stuart Lodge 在这里发布了很棒的帖子 http://slodge.blogspot.co.uk/2013/07/playing-with-constraints.html .有了这个,我就不再需要在 Collection View 上指定高度,而是告诉它坚持父 View 的顶部和底部。

例如

//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)

关于ios - 如何利用约束 - FluentConstraints 和 FluentLayouts for Xamarin.iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19004091/

相关文章:

html - 防止填充使元素变大?

Android 布局,左侧有 2 个 TextView,右侧有 CheckBox,复选框上有文本

ios - 向下滚动时,UICollectionView 中的图像会自动翻转吗?

基于 webkit 的浏览器(Chrome 和 Safari)上的 CSS 灵活布局滚动问题

Swift 中可编码属性的 iOS 通用类型

ios - 图层边界未显示在 View 和 UITableView 的顶部和右边缘

c# - AES 加密 - 使用相同 key 和 IV 的不同加密值

c# - Xamarin 需要引用 Windows.Foundation.FoundationContract

ios - 可以使用什么 Combine 运算符/方法来加载 "paged API"的所有页面?

ios - Swift 中的 Objective-C block 出现问题