背景情報:
最近、Lion から MountainLion と最新の xCode にアップグレードしました。作業中のアプリには、展開ターゲット 10.7 があります。
問題:
Title: "Start"およびAlternate: "Stop"NSButton
で Interfacebuilder をセットアップしました。ボタンでは、アプリケーションの状態 (BOOL isRunning) を確認し、ボタンが押されるたびに状態を次のように変更します。IBAction
[startStopButton setState:[appDelegate.dataController appIsRunning]];
すべてがうまくいきました。新しい xCode にアップグレードしたので、ボタンでタイトルが変更されなくなりました。
私がすでに試したこと:
- このボタンに従って、IBAction と IBOutlet の間のすべての接続を確認しました。すべてをリセットします。役に立ちませんでした。
- 新しい NSButton を作成して同じことを試みました。動作しませんでした。
コードによるタイトルの設定: 機能しませんでした。
[startStopButton setTitle:@"Start"]; [startStopButton setAlternateTitle:@"Stop"];
ブール値に問題があるのではないかと考えました。ボタンが混合モードになっていないかどうかを確認しました。次に、ハードコーディングされた statechanges を int 型から 1 と 0 に変更します。まったく変化なし。
どういうわけか、使用
[startStopButton setTitle:@"TEST"]
して状態を変更すると、状態がONCEから交互に変更されますが、元には戻りません。「TEST」文字列はボタンにも見られません...の値をログに記録した
[appDelegate.dataController appIsRunning]
ところ、正しい値が返されました。
これを解決する方法がわかりません。すべてが正常に機能し、何も変更せず、意味がありません。誰かが同等の問題に遭遇しましたか?