問題タブ [custom-transition]

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 投票する
0 に答える
220 参照

ios - カスタム UIViewController トランジションの複雑化

これに困惑した。

ビューの 1 つに panGesture が追加された UIViewController サブクラスがあります。これは、UIViewController をサブクラス化する主な理由ではありません。また、他のviewControllerが継承する特定の美学も提供します。コントローラーは UIViewControllerTransitioningDelegate に準拠し、init が成功すると、それ自体に transitioningDelegate プロパティを設定します。また、modalPresentationStyle プロパティをカスタムに設定します。

これは、デリゲート メソッドで、表示と非表示用のアニメーター、および非表示用の対話コントローラーを提供します。これは単に UIPercentDrivenInteractiveTransition() のインスタンスです。

ちなみに、このビューは常に部分的に画面に表示されます。ジェスチャで閉じる場合、panGesture の yOffset が負の値でない限り、すべて正常に動作します。ジェスチャが負の Y オフセットで終了した場合、インタラクション コントローラーは予想どおりインタラクティブな遷移をキャンセルしますが、その後 panGesture によって登録されたすべてのタッチは視覚的に反映されません。

少し印刷した後、transitioningDelegate が削除されず、presentationStyle も変更されないことに気付きました。UIViewControllerTransitioningDelegate のデリゲート メソッドの呼び出しが停止します。その理由がわかりません。

これは、カスタム初期化子と NSCoder で必要な初期化子の後に呼び出されます。

の中でviewDidLoad()、次のことが起こります。

鍋の扱いはこんな感じです。

そして、UIViewControllerTransitioningDelegate()interactionControllerDismissal のデリゲート メソッドは、次のような変数を返すだけです。

画面に部分的にしか表示されていないため、viewController を正しく表示していませんか? これは画面に表示する正しい方法ですか?

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

ios - UIPercentDrivenInteractiveTransition はすべてのサブレイヤー アニメーションをキャプチャします

UIPercentDrivenInteractiveTransitionを使用してインタラクティブなトランジションを作成しました

私が抱えている問題は、パーセント駆動のトランジションがtoVCにあるアニメーションもキャプチャしていることです

それらを独立させる方法はありますか?

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

ios - タイプ「AnimationController」はプロトコル「UIViewControllerAnimatedTransitioning」に準拠していません

コードは以下のチュートリアルから適応されました。

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

ios - 「プッシュ」としてアニメーション化されたビュー コントローラを提示する iOS (左右のアニメーション)

現在、他のView Controllerを提示するView Controllerがあります。私がやろうとしているのは、View Controller をプッシュするときに使用されるデフォルトのアニメーションを再作成することです。

私の現在のアプローチは次のとおりです。

FirstViewController:

SecondViewController:

それはほとんど機能していますが、私は奇妙な動作をしています.View Controller間を移行するときに、一種の黒い画面/フラッシュが発生しています。すでに変更を試みwindow.backgroundColorましたが、問題は解決していません。

よろしくお願いします0_0...

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

ios - インタラクティブな却下中のpresentingViewControllerへの変更のアニメーション化

Mail.app のオープン ドラフト動作に似た UIPresentationController サブクラスに取り組んでいます。ビュー コントローラが表示されると、一番上まで移動せず、表示中のビュー コントローラはフォール バックするかのように縮小されます。

その基本的な要点は次のとおりです。

これは、非インタラクティブなプレゼンテーションまたは却下に対してはうまく機能します。ただし、インタラクティブな却下を実行すると、すべてのアニメーションpresentingViewController.viewが非インタラクティブに実行されます。つまり、スケーリングは、3% が却下されたときに 3% の完了を維持するのではなく、通常は却下するのにかかる約 300 ミリ秒で発生します。

これは、GitHub で入手できるサンプル プロジェクトで確認できます。この問題のビデオは YouTube にあります。

次のアプローチを試しましたが、すべて同じ結果が得られます。

  • 上記の並列アニメーション。
  • UIViewControllerAnimatedTransitioning でのアニメーション化。
  • CABasicAnimation を使用して、コンテナー ビューのレイヤーのタイミングを手動で調整します。
0 投票する
0 に答える
214 参照

ios - デバイスの回転時のカスタム Viewcontroller トランジション バグ

ナビゲーション コントローラーのプッシュとポップの遷移をカスタマイズしようとしています。基本的にアルファアニメーションが起こっています。これがコードです。プレゼンテーションの後に iPad を回転させ、プレゼンテーション中の viewController を閉じると、containView がそこにとどまるまで、非常にクールに動作します。[transitionContext containerView] がデバイスと共に回転することはなく、表示中のビューコントローラーを閉じた後に表示されるようになります。