0
UIScrollView
を作成して、ヘッダー付きUIViewController
に表示しました。私のscrollViewDidScroll()
には、ヘッダの高さを減らすコードがいくつかあります。しかし、それが実行されると、ヘッダービュー内のすべての要素(ラベル)が変更されます。寸法を固定しておく方法はありますか? "scrollViewDidScroll"関数で寸法を変更しないようにUIView要素を修正しました
私scrollViewDidScroll()
機能はここにある:
func scrollViewDidScroll(_ scrollView: UIScrollView) {
var labelAlpha = 4 * scrollView.contentOffset.y/scrollView.frame.height
labelAlpha = max(0, labelAlpha)
labelAlpha = min(1, labelAlpha)
let parent = self.parent as? ScrollParentViewController
var viewScale = 1.0 - 4 * scrollView.contentOffset.y/scrollView.frame.height
viewScale = max(0.5, viewScale)
parent?.redView.transform = CGAffineTransform(scaleX: 1, y: viewScale)
parent?.redView.frame.origin.y = 0
parent?.whiteLabel.alpha = labelAlpha
}
親ビューのサイズを変更し、子ビューを固定高さにする必要があることを意味しますか? – GoCrazy
はい、実際には、その子のサイズを変更せずにビューを変換したいと考えています。 @GoCrazy –
スクロールビューのヘッダをどのように作成しましたか?ストーリーボード/ xib経由またはプログラムによる – zero3nna