1

私は同じコントローラ上にUICollectionViewとUITableViewを持っています。理由のために、私はまた、いくつかのscrollViewデリゲートメソッドを実装する必要があります。どのように私は、デリゲートをトリガされたコンポーネントを識別することができます(例えば、テーブルまたはUICollectionViewある?)ScrollViewデリゲートの親コンポーネントへのアクセス

func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) { 

    //need to distinguish which component 
    //triggered the delegate here 

    snapToNearestCell(collectionView) 
} 

アイデア各コンポーネントのUIScrollViewのにタグを追加することです(スクロールビューではないにもかかわらず、アクセスが簡単で、コンポーネントビューを反復処理する必要があります)

その他のアイデア、ベストプラクティスはありますか?

答えて

1

テーブルビューとコレクションビューは、そのメソッドに渡されるスクロールビューです。タグをテーブルビューとコレクションビューに設定すると、誰がそのデリゲートメソッドを呼び出したかを推論することができます。

+0

ああ、テーブルビューはスクロールビューなので、スクロールビューはありません。私はこれで愚かになりました、ありがとうございました。 –

関連する問題