セルを One からドラッグし、TwoCollectionViewにドロップする
必要があります。CollectionView1 つの CollectionView 内でのドラッグ アンド ドロップは問題ありませんが、CollectionView One から CollectionView Two へのセルを取得するにはどうすればよいですか?
何か案は?この問題を解決したプロジェクトやフレームワークはありますか? 助けてくれてありがとう!
セルを One からドラッグし、TwoCollectionViewにドロップする
必要があります。CollectionView1 つの CollectionView 内でのドラッグ アンド ドロップは問題ありませんが、CollectionView One から CollectionView Two へのセルを取得するにはどうすればよいですか?
何か案は?この問題を解決したプロジェクトやフレームワークはありますか? 助けてくれてありがとう!
https://github.com/Ice3SteveFortune/i3-dragndropこれをチェックしてください - それを達成するために私が取り組んでいるヘルパーです。テーブルビューにも対応
アップデート
最近、このコードベースの 2 番目のバージョンであるBetweenKitをリリースしました。本格的なドラッグ アンド ドロップ フレームワークになりました。
それが役に立つことを願っています!
わかりました、これは次の例のこれまでで最も単純なフローです:
UIGestureRecognizerごとに追加しますUICollectionView。 すべてのジェスチャ認識エンジンを 1 つの方法で接続します。
@IBAction func longPressGestureChanged(recognizer: UILongPressGestureRecognizer) { ... }
のそれぞれにUIViewController追加内:@IBOutletUICollectionView
@IBOutlet var collectionViewGreen: UICollectionView!
@IBOutlet var collectionViewYellow: UICollectionView!
変更を検出するジェスチャ認識メソッドを実装します。
@IBAction func longPressGestureChanged(recognizer: UILongPressGestureRecognizer) {
let globalLocation = recognizer.locationInView(view)
if CGRectContainsPoint(collectionViewGreen.frame, globalLocation) {
//you cover green collection view
let point = view.convertPoint(globalLocation, toView: collectionViewGreen)
if let indexPath = collectionViewGreen.indexPathForItemAtPoint(point) {
//you cover cell in green collection view
} else {
//you do not cover any of cells in green collection view
}
} else if CGRectContainsPoint(collectionViewYellow.frame, globalLocation) {
//you cover yellow collection view
let point = view.convertPoint(globalLocation, toView: collectionViewYellow)
if let indexPath = collectionViewYellow.indexPathForItemAtPoint(point) {
//you cover cell in yellow collection view
} else {
//you do not cover any of cells in yellow collection view
}
} else {
//you do not cover any of collection views
}
}