Objective-C

Cocoaプログラミング第3版 第9章

P.153-154に掲載されている、メソッドを追記したけれども コンパイルすると画像のように警告が発生する。 doesNotRecognizeSelector:changeKeyPath:ofObject:toValue:] called! 2010-04-01 01:02:25.813 RaiseMan[51693:a0f] observeValueForKeyPath 2010-04…

Cocoaプログラミング第3版 第8章 チャレンジ2 ソート処理ができた

ソート処理だけができなかったが、今さっき実現できたっぽい。 まずはP.141で説明してくれているメソッドを実装する。 MyDocument.mにソート処理を実施するメソッドを追加 - (void)tableView:(NSTableView *)tableView sortDescriptorsDidChange:(NSArray *)…

Cocoaプログラミング第3版 第8章 チャレンジ2

ソート以外がとりあえずできた。 P.142から143に載っているソースは全て追記して、Person.h と Person.mは流用。 動かしてみたら、MyDocumentに警告が出てきて、*personへの代入で警告が出てきたので MyDocument.mに #import "Person.h" を書いたら警告が消…

Cocoaプログラミング第3版 第8章チャレンジ1

いろいろと試行錯誤したあげく、ぐぐってヤリカタが分かった。 こんな単純な方法だったとは、自分の力量の低さに。。 Sort keyにpersonNameと設定されていたのをpersonName.length Selectorには、caseInsensitiveCompare:と設定されていたのをcompare: とす…

Cocoaプログラミング第3版 第6章

デリゲートに突入。 Cocoaでのデリゲートとは、あらかじめメソッドの定義が決まっていて、そのメソッドの呼び出しタイミングも決まっている。 なので、そのメソッドのシグネチャ通りに定義を追加すると、アプリ実行時には自動的に呼ばれる。 呼ぶタイミング…

Cocoaプログラミング第3版 第6章 チャレンジ:デリゲートを作成する

こいつは苦労した。 すぐに抜けてしまいそうなので、やったことをメモする。 新規にプロジェクトを作成するのが面倒なので、SpeakLineを使用した。 APPControllerにプロトコルの追加。ついでに、windowのアウトレットも追加している(IBOutlet NSWindow) @i…