問題タブ [uikit-transitions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2529 参照

ios8 - UIPresentationController は、別のビュー コントローラーがその上に表示されるとサイズが変わります

UIPresentationController を使用してモーダル ビュー コントローラーを提示しています。次の方法を使用して、presentedViewのフレームをcontainViewの境界よりも小さく設定しています:

この時点まで、すべてがうまく機能します。

ここで、画面全体を占める現在表示されているモーダル ビュー コントローラーの上に、別のビュー コントローラーをモーダル (デフォルトではカスタム) で表示します。したがって、画面全体をカバーするデフォルトのモーダル ビュー コントローラーの下にカスタム モーダル ビュー コントローラーがあります。

問題は、画面全体をカバーしているトップビューコントローラーを閉じると、カスタムビューコントローラーも画面全体をカバーして表示されることです。カスタム ビュー コントローラーのサイズを同じ (containerView より小さい) に維持したい。これを達成する方法はありますか。

どんな助けでもいただければ幸いです

0 投票する
0 に答える
259 参照

ios - iOS でのフリップ カード トランジション

次のガイドに従って、フリップ カード アニメーションを実装しました: https://www.raywenderlich.com/110536/custom-uiviewcontroller-transitions

そして、これが私のアニメーターのコードです(ガイドのものと同じです):

}

問題: ビューが端で反転しているだけで、何も表示されません! 画面が消えて、目的のView Controllerビューがまったく表示されません。関数viewDidLoadが呼び出されていることがわかりますが(印刷デバッグが追加されました)。なんらかの理由で、アニメーションの最初の 1/3 しか機能せず、何も見えません。

0 投票する
3 に答える
98 参照

ios - ContainerViewController を使用して、子 ViewController 間にインタラクティブなアニメーションを追加するにはどうすればよいですか?

NavigationViewControllerナビゲーションバーがトランジションを制御する上部のスワイプ可能なバーであるカスタマイズされたものを作成しようとしています(UITabBarControllerボタンではなくスワイプジェスチャで考えてください)。これが簡単なモックアップです。粗末で申し訳ありません

ScrollView としてヘッダー バーを設定しました。scrollViewDidScrollメソッドを使用して、スクロール量を正常に検出できました。というわけで、ヘッダーバー部分を装備しました。scrollViewDidScroll次に、メソッドに遷移の動きを実装する必要があります。

ビューコントローラーを相互に埋め込む方法についてAppleドキュメントを調べましたが、これを行う方法を説明するのに実際には役立ちませんでした。ドキュメントにはaddChildViewController:、ビューコントローラーを非表示にしてすぐに再表示したい場合に適したメソッドと他のメソッドの呼び出しが記載されていますが、このシナリオではインタラクティブに実行するのが難しいと感じています。

現在の VC のスナップショットを作成してから移動しますか? しかし、いったい私は何を動かしているのだろうか?たとえば、図では、RedVC 全体を左に移動していますか? しかし、BlueVC がフレームの外から動き始めた場合、BlueVC のスナップショットを取得するにはどうすればよいでしょうか? BlueVC で画像を非同期的にロードしたい場合はどうすればよいですか? BlueVC が所定の位置にスナップされるまで、プレースホルダー付きのプレースホルダー スナップショットを使用する必要がありますか?

これはすべて非常に複雑になっています...私はこのようなことを個別に行いました(スナップショット、カスタムVCトランジションなど..)が、このような場合にそれらすべてを組み合わせることに十分に慣れていません. 十分な時間があれば、何らかの方法でハッキングできると確信していますが、最善で最もクリーンな方法を知りたいと思っています。

どんな助けにも感謝します!ありがとう。

@MilanNosáľの回答を受け入れた後に編集します。

このレポにリンクされている彼のフレームワークを使用することになりました。まだインタラクティブではありませんが、彼らが私のためにとても親切にしてくれたことを使って、残りを理解することができます. ここに完全なコードを投稿できればいいのですが、それはあまり実用的ではありません。リポジトリは、将来の SO 旅行者のために無期限に維持されます。

0 投票する
2 に答える
1209 参照

ios - ピンチおよびパン ジェスチャ レコグナイザーによって同時にトリガーされるインタラクティブな ViewController トランジション

ここに画像の説明を入力

私は2つのviewControllersを持っています:

ViewController1

中間に imageView があるサブビューコントローラーの複雑なスタック

ViewController2

imageView が埋め込まれた scrollView

私が達成しようとしているのは、viewController 1 から imageView をピンチしてズームインし、viewController 2 に切り替えることによってトリガーされる 2 つの viewControllers 間の遷移です。遷移が終了したら、imageView をズームインする必要があります。ピンチ ジェスチャでトリガーされた遷移中にズームされたためです。

同時に、ズーム遷移の実行中に画像のパンをサポートして、ズームと同様に、最終状態の画像がパンされた場所に変換されるようにしたいと考えています。

これまでのところ、Hero トランジション ポッドと、自分で作成したカスタム viewController トランジションを試してきました。ヒーロー トランジションの問題は、画像が 2 番目の viewController の終了状態に正しくスナップされないことです。カスタム viewController トランジションで発生した問題は、ズームとパンの両方を同時に機能させることができなかったことです。

Swiftでこれを実装する方法を知っている人はいますか? 助けていただければ幸いです。