0

viewController AI には、self.wantsAsk でアクセスする BOOL プロパティの WantAsk が設定されています (非アトミック、割り当て)。別のView Controller(vcB)にセグエするとき、そのwantAskをvcAと同じに設定します。A に戻る時間になると、vcB の prepareToSegue メソッドが呼び出され、seque (segue.destinationViewController) から vcA へのポインターを取得します。しかし、それは vcA の値がすべて間違っていることを示しています。特に、YES であるべき (そして YES だった) wantsAsk は、NO になりました。

wantAsk に watchPoint を設定しようとしましたが、トリガーされません。私はいつもこの一般的なデバイスを使用していますが、なぜここで失敗するのでしょうか。

4

2 に答える 2

1

ビューコントローラー A にセグエバックしている場合は、おそらくそれを再インスタンス化しています。したがって、新しい A ビュー コントローラーは元の A ビュー コントローラーとは異なります。

代わりに、B から A へのセグエの準備をスキップするだけです。ナビゲーション コントローラーを使用している場合は、A に戻る処理を任せます。B がモーダルの場合は、単に を呼び出しますdismissViewController

于 2013-02-28T21:48:11.667 に答える
0

プロパティに対してセッター メソッドのみを使用する場合 (つまり、_wantsAsk = を使用しないか、合成した変数が何であれ)、シンボリック ブレークポイントを使用して、設定される場所を正確に把握できます。ブレークポイント ウィンドウに移動し、シンボリック ブレークポイントをクリックするか、デフォルトの Xcode ショートカットを使用して cmd+opt+\ を押します。そこから、"setWantsAsk:" (引用符なし) を追加します。プログラムを実行し、停止する場所を確認します。

シンボリック デバッグ

于 2013-02-28T23:02:11.310 に答える