stackoverflowにも書いちゃったけど自己解決。
https://stackoverflow.com/questions/45747953/when-uicollectionviewflowlayout-is-used-can-i-change-the-vertical-size-of-the-h
func collectionView(_ collectionView: UICollectionView,layout collectionViewLayout: UICollectionViewLayout,referenceSizeForHeaderInSection section: Int) -> CGSize {
が最初によばれるでしょ。
困るわー
storyboardでUICollectionViewにtag=1しておくこと
class testo: UIViewController,UICollectionViewDataSource,UICollectionViewDelegate,UICollectionViewDelegateFlowLayout {
var xxx:CGFloat=1000
.
.
override func viewWillAppear(_ animated: Bool) {
}
override func viewDidAppear(_ animated: Bool) {
xxx=2000
let aa = self.view.viewWithTag(1) as! UICollectionView
aa.reloadData()
}
func collectionView(_ collectionView: UICollectionView,
layout collectionViewLayout: UICollectionViewLayout,
referenceSizeForHeaderInSection section: Int) -> CGSize {
return CGSize(width:self.view.frame.width, height:xxx)
}