にけのて
Nike+iPod と JogNote を使ってジョギング。で、Mac から Nike+ のデータをあれこれ見たくなったので、ちょこちょこっと作ってみた。
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Cocoa Binding でうまくいかない
チャッチャと簡単にできる!ってのが嬉しいと思って binding で繋いでいたのだけど、なんだかうまくいかない場合がある。QTMovieView の movie を NSArrayController の selection と繋げた。NSArray には movie とそのタイトルやら何やらのデータが入ってる。作ってみた UI は表にムービーのタイトルとサムネイルがあって、それを選択すると QTMovieView に選択されたムービーが出て QTMovieView のコントローラでプレイやらストップやらあれこれできるというもの。サクサクと簡単にできたのだけど、複数のムービーを表に設定してから選択しているムービーを再生して次へ変えると…。前のムービーが止まらないでどんどんムービーが新しくスタートする。

QTMovieView は表で選択されているムービーを表示しているだけ。で、そこでコントローラで再生する。NSArrayController にあるムービーデータは再生状態になる。で、表の選択されている行が変わると、再生されているムービーのデータはそのままで今度は次のムービーのデータが QTMovieView に表示される。でまたそのデータがプレイボタンを押すと再生状態にされる…。これで2つのムービーが同時に再生されてることになる。確かに選択状態じゃなくなったムービーをストップしてないんだから当たり前。

この場合、選択状態が変わったら QTMovieView で再生しているムービーはストップしてから次の新しいムービーを表示したいのだけど、それって binding だけじゃできないような…。あれこれ探したけど見つからなかった。結局、tableViewSelectionDidChange: を拾ってそこで今再生しているムービーをストップしてから、選択されている行のムービーを表示するようにした。動作は自分の望みの物になったけど、binding だけでできる方がスッキリする気がするんだけど。

ま、このアプリを作りたくてやったんじゃなくて、たまたま QTMovieView の binding に movieってのがあって簡単にできそうだったからやっただけなので、別にどうでも良いっちゃどうでも良いのだけど、なんか気持ち悪い感じ。

スポンサーサイト

テーマ:プログラミング - ジャンル:コンピュータ




プロフィール

paraches

Author:paraches
Nike+iPod で走ってお腹を…

にけのて ダウンロード

Nike+iPod

温泉旅行

宿・ホテル予約ならじゃらんnet

最近の記事

Zenback

ランキング

人気ブログランキングへ

アクセストレード

バリューコマース

最近のコメント

月別アーカイブ

RSSフィード

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。