ドラッグ可能なウィンドウ (カート) を表示するアプリケーションを作成したいと考えています。カートは画面の下部からドラッグする必要があり、開いているすべてのビューをカバーする必要があります。ドラッグは指に従う必要があります。
セグエを使用してこれを実装することは可能ですか? 私の考えは、次のようなタッチイベントでセグエを実行することです:
[self performSegueWithIdentifier:@"Show Cart" sender:self];
セグエの実装では、カートを開き、オフスクリーンに配置してから、ユーザーが指を離すまで、ユーザーの指の動きを反映するように配置します。次に、アニメーションを元に戻すか、全画面表示にします。
セグエはこれを目的としたものではありませんが、どうすれば実装できますか?
編集:なるほど、もっと具体的にする必要があります:)ドキュメントをよく理解していれば、1つのビューを提示する方法が3つあります。
それを navigationController にプッシュする: カートはナビゲーション チェーンの「上」に存在するため、これは望ましくありません。カートをそこにプッシュすると、ユーザーが混乱します。
モーダル表示: ビューをドラッグすることはできません。これは、背後にあるオブジェクトが表示されていないためです (単に黒くなっているだけです)。
アプリのルート navigationController のような他のビューにビューを追加する: これを試しましたが、カートのボタンをクリックすると、アプリがクラッシュしました。コントローラーの初期化または保存が不十分だったためだと思います。
では、ビューをモーダルに表示できるとしましょう。しかし、どのようにすれば解決できますか? このビューは、どのオブジェクトに対して理想的に配置されますか?