2016-11-12 7 views
0

scrollView를 화면 맨 위로 스크롤 할 때 이미지 뷰를 확대하려고합니다. 여기에 내 코드입니다 : 내가 스크롤로Swift : 스크롤 뷰에서 위로 스크롤 할 때 이미지를 확대하는 방법

func scrollViewDidScroll(_ scrollView: UIScrollView) { 
    let offset = scrollView.contentOffset.y 
    if (offset <= 0) { 
     let ratio: CGFloat = -offset*1.0/UIScreen.main.bounds.height 
     self.coverImageView.transform = CGAffineTransform(scaleX: 1.0 + ratio, y: 1.0 + ratio) 
    } 
} 

이 이미지를 확대하지만, 나는 또한 최대 스크롤하고 있기 때문에, 내보기가 다운되면, 그것은 확장으로 이미지 뒤에 흰색 배경을 알 수있다. 어떻게 그 일이 일어나지 않도록합니까?

답변

0

스크롤보기는 사용자가하려는 일에 실제로 적합하지 않은 것처럼 들립니다. 대신 제스처 인식기를 사용하는 것이 어떻습니까? 이 라인을 따라 뭔가 :

override func viewDidLoad() { 
    super.viewDidLoad() 
    coverImageView.isUserInteractionEnabled = true 
    let panGestureRecognizer = UIPanGestureRecognizer(target: self, action: #selector(didPan)) 
    coverImageView.addGestureRecognizer(panGestureRecognizer) 
} 

func didPan(panGestureRecognizer: UIPanGestureRecognizer) { 
    let translation = panGestureRecognizer.translation(in: coverImageView) 
    if translation.y > 0 { 
    let zoomRatio = (translation.y * 0.1) + 1.0 
    coverImageView.transform = CGAffineTransform(scaleX: zoomRatio, y: zoomRatio) 
    } 
} 

당신은 당신이 원하는 방법을 정확하게 작동하도록 얻을 놀러해야 할 것이다, 그러나 당신이 시작하는 데 충분합니다.

관련 문제