ios – 为集合视图单元设置自动布局宽度和高度约束的最佳实践?

ios – 为集合视图单元设置自动布局宽度和高度约束的最佳实践?,第1张

概述我正在设计一个快速构建的ios 8应用程序的UI.我对autolayout和约束有中级知识.这是我的情况:我有一个自定义集合视图控制器和集合视图单元格.我想在界面构建器中使用“等宽”和“相等高度”约束来设置单元格相对于父视图乘数的宽度和高度 – 而不是使用固有的高度/宽度属性,如320 x 94. 这是我尝试过的 >使用IB内部大小类的固有宽度和高度. (这不起作用) >控制 – 从UIColle 我正在设计一个快速构建的ios 8应用程序的UI.我对autolayout和约束有中级知识.这是我的情况:我有一个自定义集合视图控制器和集合视图单元格.我想在界面构建器中使用“等宽”和“相等高度”约束来设置单元格相对于父视图乘数的宽度和高度 – 而不是使用固有的高度/宽度属性,如320 x 94.

这是我尝试过的

>使用IB内部大小类的固有宽度和高度. (这不起作用)
>控制 – 从UICollectionVIEwCell拖动到CollectionVIEw(看不到“相等高度”和“相等宽度”甚至不是约束选项)

我应该只考虑内在的高度和宽度,并假设CollectionVIEwFlowLayout将照顾我或有没有办法以编程方式执行此 *** 作?

谢谢.
亚历克斯

解决方法 使用UICollectionVIEwDelegateFlowLayout方法调整单元格大小

例如,如果您希望视图宽度上有3个单元格

func collectionVIEw(collectionVIEw: UICollectionVIEw,layout collectionVIEwLayout: UICollectionVIEwLayout,sizeforItemAtIndexPath indexPath: NSIndexPath) -> CGSize{    let wIDth = CGRectGetWIDth(collectionVIEw.bounds)    let hcount = 3    let gapcount = CGfloat(hcount) + 1    //this should be a class var/constant which you can Feed into the minimumlinespacingForSectionAtIndex delegate    let gap = 10     let kwIDth = wIDth - gap    let keywIDth = kwIDth/CGfloat(hcount)    return CGSize(wIDth:keywIDth,height:50)}

您可以使用调整单元格之间的距离

func collectionVIEw(collectionVIEw:UICollectionVIEw,layout collectionVIEwLayout:UICollectionVIEwLayout,minimumlinespacingForSectionAtIndex section:Int) – > CGfloat的

和边缘插入

func collectionVIEw(collectionVIEw:UICollectionVIEw,insetForSectionAtIndex section:Int) – > UIEdgeInsets

总结

以上是内存溢出为你收集整理的ios – 为集合视图单元设置自动布局宽度和高度约束的最佳实践?全部内容,希望文章能够帮你解决ios – 为集合视图单元设置自动布局宽度和高度约束的最佳实践?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1103941.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存