Cocoa Bindings。ボタンを監視するには? 1日考えて....

in

1日考えて....解決策は発見できず。とりあえず(僕のキーフレーズかもしれない)Bindingsから逃げちゃいました。ボタン監視の件。Enable項目のController.canCopyをハズしちゃいました。で、代わりに、TableView(Master/Detailタイプのアプリなので)のtableViewSelectionDidChangeをControllerで拾って

- (void)tableViewSelectionDidChange:(NSNotification *)aNotification
{
  if  ([self canCopy])
  {
    [outletCopyButton setEnabled:YES];
  }
  else
  {
    [outletCopyButton setEnabled:NO];
  }
}

ってな逃げの手。これだけじゃ新規オブジェクトを追加時にテキストフィールに文字列を入力してもボタンが有効にならないので、TextFieldオブジェクトからもcontrolTextDidEndEditingを拾って上記と同じ処理を加えました。

これで、見た目は希望通りの動作をしてくれるのですがたぶんとってもダーティー。まず、同じコードを二度書かねばならないところからしてダメダメなんだけれどわからないものは仕方がない。「今は」これでヨシとしておこうかと思う。

この記事のトラックバックURL:

http://hippos-lab.com/blog/trackback/164

Comments