iOSアプリ内で遷移の速度を倍にするアプリケーション全体のプロパティを設定することはできますか?iOSの移行やセグのスピードアップを行うにはどうすればよいですか?
1
A
答えて
7
アプリケーション全体ですか?
ビューコントローラのコンテンツビューのバッキングレイヤーでspeedプロパティを設定してみてください。 speed = 2は倍速になります。おそらく、すべてのビューコントローラのviewDidLoadメソッドでこれを設定することができます。
また、UIWindowのカスタムサブクラスを作成し、そのウィンドウオブジェクトに、makeKeyWindowのようなボトルネックの方法で、表示レイヤーのspeedプロパティを2.0に設定させることもできます。すべてのアプリケーションのUIWindowオブジェクトにカスタムクラスを使用させる必要があります。私はそれをする方法を理解するためにいくつかの掘削をしなければならないだろう。
3
Appleは、異なるアプリケーション間で遷移があまりにも異質になるため、簡単に変更することはできません。レイヤーの速度を2倍にすることはできますが、それは残りのアニメーションのタイミングを乱すことになります。 UIViewControlerのカテゴリを使用して独自のトランジションを実装するのが最善の方法です。
のUIViewController + ShowModalFromView.h
#import <Foundation/Foundation.h>
#import <QuartzCore/QuartzCore.h>
@interface UIViewController (ShowModalFromView)
- (void)presentModalViewController:(UIViewController *)modalViewController fromView:(UIView *)view;
@end
のUIViewController + ShowModalFromView.m
#import "UIViewController+ShowModalFromView.h"
@implementation UIViewController (ShowModalFromView)
- (void)presentModalViewController:(UIViewController *)modalViewController fromView:(UIView *)view {
modalViewController.modalPresentationStyle = UIModalPresentationFormSheet;
// Add the modal viewController but don't animate it. We will handle the animation manually
[self presentModalViewController:modalViewController animated:NO];
// Remove the shadow. It causes weird artifacts while animating the view.
CGColorRef originalShadowColor = modalViewController.view.superview.layer.shadowColor;
modalViewController.view.superview.layer.shadowColor = [[UIColor clearColor] CGColor];
// Save the original size of the viewController's view
CGRect originalFrame = modalViewController.view.superview.frame;
// Set the frame to the one of the view we want to animate from
modalViewController.view.superview.frame = view.frame;
// Begin animation
[UIView animateWithDuration:1.0f
animations:^{
// Set the original frame back
modalViewController.view.superview.frame = originalFrame;
}
completion:^(BOOL finished) {
// Set the original shadow color back after the animation has finished
modalViewController.view.superview.layer.shadowColor = originalShadowColor;
}];
}
@end
これは、簡単にあなたが欲しいものは何でもアニメーショントランジション使用するように変更することができます。お役に立てれば!
関連する問題
- 1. Amicableナンバーアルゴリズムのスピードアップを行うにはどうすればよいですか?
- 2. レルムの移行中に、多対1の移行を行うにはどうすればよいですか?
- 3. データベース移行を使用するlaravelのunittestsをスピードアップするにはどうすればよいですか?
- 4. iOSでInstagram Storiesキューブの移行はどのように行われますか?
- 5. Javascriptでこのようなホバー移行を行うにはどうすればいいですか?
- 6. iosで通話を行うにはどうすればよいですか?
- 7. Flywayでの移行に戻るにはどうすればよいですか?
- 8. Laravelで新しい移行ファイルを移行するにはどうすればよいですか?
- 9. プログラムで読み込まれたストーリーボードでセグを実行するにはどうすればよいですか?
- 10. iOS 5では、ストーリーボードUIViewControllerのセグのプロパティを設定するにはどうすればよいですか?
- 11. 空の行列や空の列や行を持つ行列を操作しないようにするにはどうすればよいですか?
- 12. 移行エラーを解決するにはどうすればよいですか?
- 13. CFURLCreateStringByAddingPercentEscapesからstringByAddingPercentEncodingWIthAllowedCharactersに移行するにはどうすればよいですか?次のように
- 14. System.Diagnostics.Processの実行をどのようにスピードアップしますか?
- 15. Laravelの複数のデータベースで移行を実行するにはどうすればよいですか?
- 16. 実行せずにRコマンドプロンプトの次の行に移動するにはどうすればよいですか?
- 17. このページをスピードアップするにはどうすればよいですか?
- 18. このジュリアコードをスピードアップするにはどうすればよいですか?
- 19. WatchKit特定のセグを識別子で実行するにはどうすればいいですか
- 20. セグが完了した後、コードを実行するにはどうすればよいですか?
- 21. kubernetesクラスタで一度限りの移行タスクを実行するにはどうすればよいですか
- 22. app engine managed VMでSQLスキーマの移行を実行するにはどうすればよいですか?
- 23. いくつかの行をすばやくテストするにはどうすればよいですか?
- 24. Djangoのデータ移行に対してテストを実行するにはどうすればよいですか?
- 25. プラグインで作成した移行ではどうすればよいですか?
- 26. iOS - Clearアプリのようなビジュアルエフェクトを実行するにはどうすればよいですか?
- 27. Herokuでのアレムビアの移行はどのように行うべきですか?
- 28. iOSでGoogleマップの移動に伴いマーカーを移動するにはどうすればよいですか?
- 29. iOs 10.2でiphone 6Sで自分のiOSアプリケーションを実行するにはどうすればよいですか?
- 30. どのように私のセグをよりスムーズに移行させることができますか?
「UIWindow」をサブクラス化する必要はありません。ウィンドウを作成した直後に、アプリケーションデリゲートで 'self.window.layer.speed = 2.0f'を実行することができます。 – Costique