私はKeyValueObservingを使って練習していますが、それは私にはよくわかりません。
スライダー(sldMoving)があり、移動すると、コンソールに「変更されました」と表示されているように見せかけます。それを行う方法は他にもありますが、私は学ぶのが得意です。
-(void)viewDidLoadでそれをうまく実装します:
[super viewDidLoad];
[self.sldMoving addObserver:self forKeyPath:@"self.sldMoving.value" options:NSKeyValueObservingOptionNew context:NULL];
およびobservaValueKeyPath内:
-(Void) observeValueForKeyPath: (NSString *) keyPath ofObject: (id) object change: (NSDictionary *) change context: (void *) context {
if ([keyPath isEqualToString:@"self.sldMoving.value"]) {
NSLog(@"I Have change");
明らかに、私が書いたこのナンセンスは機能しません。
エラー:
2012-08-25 20:17:07.611例[3947:c07] *キャッチされなかった例外'NSUnknownKeyException'、理由:'[addObserver:forKeyPath:@ "sldMoving.value" options:0x101 context:0x0]が原因でアプリを終了しました「sldMoving」プロパティのKVC準拠ではないオブジェクトへ。*まずスローコールスタック:(0x136b022 0x1060cd6 0x1313a48 0x13139b9 0xadc84f 0xadeb0c 0xaddd3f 0xadc6fd 0x27ff 0x28aa1e 0x1e9401 0x1e9670 0x1e9836 0x1f072a 0x1c1596 0x1c2274 0x1d1183 0x1d1c38 0x1c5634 0x2177ef5 0x133f195 0x12a3ff2 0x12a28da 0x12a1d84 0x12a1c9b 0x1c1c65 0x1c3626 0x1efd 0x1e65)終了と呼ばれる例外をスローします
どうすればこれを解決できますか?
ありがとうございました。
(すみません、私の悪い英語)