web-dev-qa-db-ja.com

iOSデバイスでデバッグ中に遅いアニメーションを切り替える

私はxCode 4.3.1を使用していますが、iOSシミュレーターにあるオプションを使用する必要があります。

出来ますか?

54
fabregas88

Simulatorとまったく同じ方法でそれを行うことはできませんが、lldbを使用して同じ効果を達成するための良い方法があります。

デバッガーを使用してコードの実行を一時停止し、次のコマンドを入力します。

p [(CALayer *)[[[[UIApplication sharedApplication] windows] objectAtIndex:0] layer] setSpeed:.1f]

デバッガに。

このリンク に感謝します。

146
Tim Camber

Swift 3:

UIApplication.shared.windows.first?.layer.speed = 0.1

または、AppDelegateのどこかにいて、ウィンドウを1つしか使用しない場合は、次のようにできます。

window?.layer.speed = 0.1
18
JAL

Swiftアプリの場合:

ブレークポイントでコードを停止し、次のlldbコマンドを入力します。

_(lldb)_p UIApplication.sharedApplication().windows.first?.layer.speed = 0.1


または、コードのどこかで速度を変更することもできます。たとえば、アプリケーションの起動時に_#if_プリプロセッサマクロを使用する

_func application(application: UIApplication,
   didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 
{
    ...

    #if DEBUG
        application.windows.first?.layer.speed = 0.1
    #endif
_

「Swift Compiler-Custom Flags」セクションの「Other Swift Flags」行にDEBUG記号を設定することを忘れないでください。あなたはDEBUGを追加します_-DDEBUG_エントリを持つシンボル。

15
dreamlab

Objective-cではかなりうまくいきます

self.window.layer.speed = .1f;
0

1つのビューコントローラーでのみアプリの速度を低下させる場合は、コマンドの実行後に実行を継続するようにブレークポイントを構成できます。このブレークポイントはviewDidAppearに設定します。次に、速度を1Xに戻すために別の「停止できない」ブレークポイントを設定できます。この別のブレークポイントをviewDidDisappearに設定します。

とても簡単です。ブレークポイントリストに保持して非アクティブ化し、必要なときに簡単に再利用できます。

0
Mikael