変数があるとしましょう、self.position
、Xcodeが値を変更するたびにXcodeを中断させるにはどうすればよいですか(多くのメソッドが変更する可能性があります)。
条件付きブレークの場合:
値が変更されるたびに中断する場合:
誰がセッターを呼び出したかを確認したい場合は、スタックトレースの次の行(私の例ではviewDidLoad)を見てください。
更新:
ウォッチポイントの追加
(lldb)
プロンプトがコンソールに表示されるようにどこでも中断しますwatchpoint set variable _position
を入力します(_positionを監視したいiVarに置き換えます)watchpoint modify -c "_position < 0.5" 1
ここで、引用符で囲まれた式は条件であり、最後の番号は#3でメモしたウォッチポイント番号です。シンボリックブレークポイントを設定します。ブレークポイントナビゲーターに移動し、[+]をクリックして、[シンボリックブレークポイントの追加]をクリックします。最初のフィールドに「-[YourSubclassNameHeresetPosition:]」と入力し、他の設定を追加して、ダイアログの外側をクリックします。
それを行う簡単な方法は、ウォッチウィンドウで変数を右クリックし、ウォッチ変数オプションを選択することです。 Xcodeは、値が変更されると警告を発します。
または、 Key-Value Observing を確認することもできます。
position
のセッターをオーバーライドして、変数を設定するときにブレークポイントを設定できます。