2017-06-20 4 views
0

スクロール表示中に現在のページを取得するためにこのコードを実行しました。画面下部にUICollectionViewがあります。 問題は、私がスクロールビューをスクロールしているときにうまくいきますが、このメソッドはスクロール中にも働いていますUICollectionViewScrollviewデリゲートメソッドは、コレクションビューのスクロール時にもコールします。

func scrollViewDidScroll(_ scrollView: UIScrollView){ 
     let pageNo = round(scrollView.contentOffset.x/scrollView.frame.size.width) 
     print(pageNo) 
     if pageNo == 0.0{ 
      changebackColor() 
      dignosticView.backgroundColor = UIColor().HexToColor(hexString: "FC6614", alpha: 1.0) 
      dignosticView.layer.borderColor = UIColor().HexToColor(hexString: "f68f56").cgColor   
     } 
     else if pageNo == 1.0{ 
      changebackColor() 
      offerView.backgroundColor = UIColor().HexToColor(hexString: "FC6614", alpha: 1.0) 
      offerView.layer.borderColor = UIColor().HexToColor(hexString: "f68f56").cgColor 
     } 
     else if pageNo == 2.0{ 
      changebackColor() 
      alertView.backgroundColor = UIColor().HexToColor(hexString: "FC6614", alpha: 1.0) 
      alertView.layer.borderColor = UIColor().HexToColor(hexString: "f68f56").cgColor 
     } 
    } 

答えて

1

はい、コレクションビューもscrollViewです。スクロールビューのデリゲートの最初の行にifステートメントを配置し、スクロールビューがコレクションビューのものである場合は何も行いません。

if(scrollView != collectionView){ 
    //your code here 
} 
+0

ありがとうございます – AbhiRaz