gpt4 book ai didi

ios - collectionViewLayout初始化

转载 作者:行者123 更新时间:2023-11-30 13:33:43 25 4
gpt4 key购买 nike

我已经在 Storyboard中初始化了我的 UICollectionView 并决定以编程方式设置一些属性;但是,这些新属性分配仅在我调用 self.collectionView.reloadData() 时才会生效。

let layout = self.collectionView!.collectionViewLayout as! UICollectionViewFlowLayout
layout.minimumInteritemSpacing = 0;
layout.minimumLineSpacing = 0;

Storyboard当前已将两者设置为零,但它加载的 minimumInteritemSpacing 当我以编程方式分配它们时,该值不为零。我尝试将上述三行代码放入我的 viewDidLoad() 函数中,但是它们在初始加载时并未生效。

我也尝试过这个:

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAtIndex section: Int) -> CGFloat {
return 0
}
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAtIndex section: Int) -> CGFloat {
return 0
}

仍然没有运气,我不确定在调用 self.collectionView.reloadData() 之前我还可以尝试在初始加载时将两者强制为 0

设置的 Storyboard屏幕截图: enter image description here

最佳答案

这对我来说听起来像是一个黑客,我现在无法测试它,所以它可能不起作用,但试试这个:

viewDidLoad中:

let button = UIButton(type: UIButtonType.System) as! UIButton
button.frame = CGRectMake(100, 100, -100, -100)
button.setTitle("Test Button", forState: UIControlState.Normal)
button.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)

buttonObj.sendActionsForControlEvents(.TouchUpInside)

然后这个函数:

func buttonAction(sender:UIButton!)
{
self.collectionView.reloadData()
}

这将在框架外创建一个按钮(因此用户永远不会看到它)。然后它被 viewDidLoad 中的最后一行按下,并调用 buttonAction 函数。

关于ios - collectionViewLayout初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36318943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com