問題タブ [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 投票する
0 に答える
420 参照

uiview - カスタムトランジション中にUIKitがUIViewControllerのUIViewフレームを「フルスクリーン」にリセットするのはなぜですか?

カスタムトランジションを使用して、呼び出されたときにView Controllerを画面から2/3スライドさせ、- presentViewController:animated:completion:呼び出されたときに再びスライドさせますdismissViewControllerAnimated:completion:

UIScreenEdgePanGestureRecognizerビューコントローラーをスライドさせるために、に接続された UIPercentDrivenInteractiveTransition も使用しています。

dismissViewControllerAnimated:completion:前に を呼び出す場合を除いて、すべて正常に機能します。

画面からスライドしたView Controllerのフレームと呼ばれ、次のように設定されます。

アニメーションが実行される前に一時的に「フラッシュ」し、画面外の 2/3 から全画面にスライドします。

View Controller で UIView をサブクラス化する-setFrameことで、メソッドを示すブレークポイントを設定できます。

で呼び出し-setFrameてい(0 0; 320 568)ます。

なぜこれを行うのですか?アニメーションが始まる前にフレームを設定しないようにするにはどうすればよいですか?

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

objective-c - iOS7 カスタム インタラクティブ トランジション、非表示の戻るボタンがキャンセル時に「...」として再表示される

I have a custom interactive transition which requires me to hide the standard back button. Basically, the transition looks like a push from left-to-right rather than the standard right-to-left push we're all familiar with. That's why my back button is on the right side instead.

As you can see from two screenshots I took before and after cancelling pop transition activated by a UIScreenEdgePanGestureRecognizer, once the transition is cancelled there is a "..." where the back button would be.

Before and After Cancelling the transition

I'm currently using

and I've tried putting it in awakeFromNib, viewDidLoad, viewDidAppear, viewWillAppear methods all without fixing the problem.

So using the power of Reveal.app I investigated the view hierarchy before and after and saw this:

View hierarchy before and after via reveal.app

What you see highlighted in each part of the image is what appears to be changing in the area of the nav bar that contains the hidden back button. Before it's a UINavigationButton and then it becomes a UINavigationButtonItem with a UILabel, which must be what contains the "..." and remains like this.

Any help would be much appreciated. I hope this is detailed enough to give a good picture of the issue.

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

xamarin.ios - TransitionDelegate と MVVMCross

ビュー間のカスタム遷移を IUIViewControllerTransitioningDelegate で実装しようとしています。これは私のTableViewControllerです

しかし、コアから別のViewModelを表示すると、GetAnimationControllerForDismissedControllerまたはPresentingController(それ自体が表示されている場合)は呼び出されません...

ここではモノタッチの例 https://github.com/xamarin/monotouch-samples/tree/master/TransitionsDemo

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

objective-c - カスタム コンテナ コントローラを使用したカスタム トランジションの実装

iPhone アプリ内でカスタム コンテナー コントローラーを作成しようとしています。iOS 7 内の TabBarControllers および NavigationControllers の既定の動作と同様に、このコンテナーにカスタム トランジションを実装したいと考えています。カスタム アニメーションをトランジションに追加することはできましたが、インタラクティブ ロジックの追加に問題があります。

移行プロセスの一環として、TransitionContext を作成する必要があります。これは通常、システムによって作成されますが、カスタム コンテナー コントローラーを使用しているため、UIViewControllerContextTransitioningProtocol に準拠する独自のクラスを作成しました。トランジションに関連付けられたジェスチャ レコグナイザーがトリガーされると、次のように呼び出してトランジションを開始しようとします。

ここで、self.horizo​​ntalSwipeInteractionController は UIPercentDriveInteractiveTranstion から継承します。残念ながら、この時点で次のエラーが発生します。

今何をすべきかわかりません。ドキュメントには、カスタム コンテナ コントローラを使用してカスタム トランジションを実装する方法の例はありません。

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

ios - 選択したビューが所定の位置にとどまり、フェードアウトするビュー コントローラーの遷移を行う方法

標準のプッシュ遷移である遷移を行うことに興味がありますが、toViewController が所定の位置にスライドしている間、fromViewController は選択された UIView を toViewController の上に保持します。これを以下にモックアップしてみました。

左側のボックスは UIView と 3 番目のボックスを表します (茶色の one_ はクリックされたものです。中央の図では、fromViewController が左にスライドします (前に toViewController がスライドします。選択された UIView は所定の位置に留まり、フェードアウトするアニメーションがあります。

ここに画像の説明を入力

私はカスタム トランジションにあまり詳しくありませんが、これがどのように行われるかを考えています。おそらくContainer View Controllerのコンテキストにありますが、正直なところ、確かではありません. この効果を達成する方法についてのアイデアはありますか? ユーザーが「戻る」ボタンを押したときに効果を逆に実行することも可能であることを願っています。

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

ios - カスタム モーダル プレゼンテーションは、preferredInterfaceOrientationForPresentation を無視します

iOS 8 の UIPresentationController を使用してカスタム モーダル プレゼンテーションを作成しています。提示されているコントローラーには、優先されるインターフェースの向きがありますUIInterfaceOrientationLandscapeLeft

UIPresentationController を使用してこのコントローラーを提示すると、提示されたコントローラーの preferredInterfaceOrientationForPresentation メソッドの結果を無視して、ポートレートで表示されます。

View Controller の提示

提示されたView Controller

UIPresentationController に、提示されたコントローラーの preferredInterfaceOrientationForPresentation メソッドの結果を考慮させることは可能ですか?

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

ios7 - iOS8と互換性のあるiOS7用のカスタムトランジションを作成するにはどうすればよいですか?

ビュー コントローラーのカスタム トランジションを作成したいと考えています。で導入された新しい API に関する情報を収集し始めましたiOS7しかし、この API は で何らかの形で変更されたと言われていますiOS8WWDC 2014のビデオ 214 は、この点に取り組んでいます。

また、作成したカスタム トランジションがiOS7適切に動作しないと言う人もいiOS8ます (たとえば、ここそこを参照してください)。

だから私の質問:

iOS7互換性があり、壊れないカスタムトランジションを作成するための一般的なアドバイス、ガイドラインを教えてくださいiOS8。具体的に何を避けるべきですか?トランジションが機能しない原因は何iOS8ですか?