狠狠撸

狠狠撸Share a Scribd company logo
値変换
                           NSValueTransformer


                    Cocoa勉強会?#18?/?2006.06.03?(土)?




Powered?by?Rabbit?0.6.3?and?COZMIXNG
値変换とは?
 その名のとおり、値を変換
 バインディングのビュー/コントローラとモ
 デル間
モデル/コントローラのコードを減らすことが
できる




                    1/15
歴史
?10.2?Jaguar
?NSFormatter
10.3?Panther
?Cococa?Bindings?導?
?NSValueTransformer?導?
10.4?Tiger
?あまり変化してない?


                         2/15
値変换の使いかた
Interface?Builder?で名前を指定




                           3/15
値変换の概要?しくみ
ADC?の「Cocoa?バインディングの仕組み」?参照
http://developer.apple.com/jp/documentation/cocoa/
Conceptual/CocoaBindings/Concepts/
HowDoBindingsWork.html




                                                     4/15
値変换のAPI
三浦?樹さんによる「Introduction?to?Value?
Transformers」の和訳?参照
http://homepage.mac.com/mkino2/panther/
ValueTransformers/ValueTransformers.html




                                           5/15
値変换を自作する
?



(省略)
?
さきほどのドキュメントを参照のこと




                    6/15
値変换の種類
 両?向
  単位や型の相互変換
 ??向(モデル->ビュ?)
  表?の調整(値->アイコンなど)
  ビュ?のロジック



                     7/15
標準の値変换
以下の4つ(10.4現在)
 NSNegateBooleanTransformer
  NSIsNilTransformer
  NSIsNotNilTransformer
  NSUnarchiveFromDataTransformer




                                   8/15
論理値(YES/NO)
 NSNegateBooleanTransformer
 NSIsNilTransformer
 NSIsNotNilTransformer
enabledやhiddenにバインディングするとき、
便利




                              9/15
なんでもNSDataに
 NSUnarchiveFromDataTransformer
NSCodingプロトコルに適合していれば、なん
でもNSDataとして保存できる
カラーウェルを使うときに便利。




                                  10/15
他の値変换?-?Examples
/Developer/Examplesにいろいろ
  AppKit/Spotlighter
  AppKit/TemperatureConverter
  Foundation/XMLBrowser
  Sync?Services/MediaExample
  Xgrid/GridSample


                                11/15
Temperature?Converter




                   12/15
Spotlighter




              13/15
他の値変换?-??村作
昔つくったもの。(EditCast)




                     14/15
おしまい
       表?を?の値でなく、加?したいときに便利
       頼りすぎると、コード中でも変換しないとい
       けないので注意(そういうときは、デザイン
       を?直したほうがよいかも)




Powered?by?Rabbit?0.6.3?and?COZMIXNG
                                       15/15

More Related Content

値変换