UIScrollView 中宽度和高度相等的动态按钮
Posted
技术标签:
【中文标题】UIScrollView 中宽度和高度相等的动态按钮【英文标题】:Dynamic Buttons in UIScrollView with Equal width and height 【发布时间】:2018-11-07 05:24:06 【问题描述】:我想在滚动视图中根据屏幕尺寸显示具有动态高度的按钮列表。我可以在 UIView 中做到这一点,但是当我在 UIScrollView 中应用相同的自动布局方法时,它并没有增加按钮的大小。所以请指导我如何根据屏幕大小增加 UIScrollView 中的按钮大小。
【问题讨论】:
在不知道您做了什么的情况下,我们无法帮助您。告诉我们你做了什么。 在应用比例约束时选择主视图作为第二个视图而不是滚动视图,那么您将能够获得所需的结果。 我有两个视图 V1 和 V2。我对 V1 和 V2 应用了比例约束。并且 V2 包含滚动视图 S1,S1 包含具有相同高度的按钮和文本字段。我需要更改 S1 元素的高度基于屏幕高度。我按照下面的链接检查如何在视图中使用滚动视图并完全像那样应用自动布局。 medium.com/@pradeep_chauhan/… 【参考方案1】:如果按钮是动态的并且将来可能比你增加和减少应该使用CollectionView
而不是ScrollView
。
-
将
CollectionView
拖入ViewController
。
将单元格拖入CollectionView
。
在 Cell.set 中添加按钮(或根据您的要求添加标签) button(leading,trailing,top,bottom) == Cell(leading,trailing,top,bottom)
编写 dataSource 和委托方法以及 UICollectionViewDelegateFlowLayout 方法。
并更改以下方法以根据屏幕增加按钮高度
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize
return CGSize(width: self.view.bounds.width/2, height: self.view.bounds.height*0.15)
【讨论】:
以上是关于UIScrollView 中宽度和高度相等的动态按钮的主要内容,如果未能解决你的问题,请参考以下文章
获取 UIScrollView 内的 UICollectionView 高度
UIScrollview 宽度不能与 iPhone 大小相等