NSObject UIKit追加分

2010. 10. 21
●概要

このカテゴリは、FoundationフレームワークのNSObjectクラスにメソッドを追加します。

このカテゴリのメソッドはアプリケーションにあるnibファイルの読み込みのサポートを提供します。



●タスク

●Nibファイルから読み込みを開始した時の応答

– awakeFromNib



●インスタンスメソッド

awakeFromNib

- (void)awakeFromNib

Interface Builderのアーカイブ、またはnibファイルから読み込まれた後のレシーバを用意します。

nibアーカイブ内の全てのオブジェクトが読み込まれて初期化された後で、各オブジェクトにawakeFromNibメッセージが送られます。

オブジェクトがawakeFromNibメッセージを受け取る時には、既に確立されているアウトレットとアクションの接続は全て保証されています。

初期化にいくつかの追加事項を要求する場合は、親クラスであるsuperを呼び出してawakeFromNibを実装する必要があります。

仮にこのメソッドの実装に何も加えずデフォルトのままであっても、多くのUIKitクラスは空ではない実装を提供します。

:Interface Builderのテストモードでは、Interface Builderのプラグインを読み込んだインスタンス化したオブジェクトに送信されます。
オブジェクトを定義しているコードを含めたフレームワークを考慮してプラグインをリンクしているので、Interface Builderは現在のawakeFromNibメソッドを呼び出すことができます。
同じことは、Xcodeプロジェクトで生成されたカスタムオブジェクトには当てはまりません。
Interface Builderはオブジェクトで定義されたアウトレットとアクションのみ知っていて、実際のコードへのアクセスはできません。

インスタンス化の処理中にアーカイブの中のオブジェクトを展開し、メソッドに適した型で初期化します。

オブジェクトは(UIViewUIViewControllerの全てのサブクラスを含む)NSCodingプロトコルに準拠し、initWithCoder:メソッドを使って初期化されます。

NSCodingプロトコルに準拠していない全てのオブジェクトは、initメソッドで初期化されます。

全てのオブジェクトのインスタンス化と初期化が終わると、nibローディングコードは全てのオブジェクトのアウトレットとアクションの接続を復旧します。

その後、オブジェクトのawakeFromNibメソッドを呼び出します。

nibローディングの行程に関する詳細情報は、『Resource Programming Guide』の『Nib Files and Cocoa』を参照してください。

重要:アーカイブからのオブジェクトの初期化の順序は保証されないので、他の階層のオブジェクトにメッセージを送ることはできません。
awakeFromNibメソッドが送られた後、安全に他のオブジェクトにメッセージを送ることができます。

通常オブジェクトのawakeFromNibの実装では、設計した後に必要とする追加のセットアップを行うことはできません。

例えば、ユーザ設定や他のコントロールの値に合わせてコントロールをカスタマイズするのに、このメソッドは使用されます。

また、アプリケーションを以前の状態に個々のコントロールを復元するのに使用できます。



参考文献

NSObject UIKit Additions Reference






Bose SoundLink around-ear wireless headphones II
0 Comments
Leave a comment
管理者にだけ表示を許可する
Top
0 Trackbacks
Top
Calendar
06 | 2017/07 | 08
Sun Mon Tue Wed Thu Fri Sat
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 - - - - -
Recent Articles
iTunes


Swift
Categories
Tips
Profile

水月杏香

Author:水月杏香
永遠の初心者プログラマ。

Wish List
WACOM


ARC
Technical Q&A
情報プロパティリストキー
Start Developing iOS Apps Today
BOSE

Bose SoundLink around-ear wireless headphones II
Reference
NSApplicationDelegateプロトコル
NSArrayクラス
NSAutoreleasePoolクラス
NSBundleクラス
NSBundle UIKit追加分
NSCalendarクラス
NSCoderクラス
NSCodingプロトコル
NSCopyingプロトコル
NSDataクラス
NSDateクラス
NSDateFormatterクラス
NSDictionaryクラス
NSEntityDescriptionクラス
NSEnumeratorクラス
NSErrorクラス
NSExceptionクラス
NSFetchRequestクラス
NSFileHandleクラス
NSFileManagerクラス
NSIndexPathクラス
NSIndexPath UIKit追加分
NSKeyedArchiverクラス
NSKeyedUnarchiverクラス
NSKeyValueCodingプロトコル
NSLocaleクラス
NSManagedObjectクラス
NSManagedObjectContextクラス
NSManagedObjectModelクラス
NSMutableArrayクラス
NSMutableCopyingプロトコル
NSMutableDictionaryクラス
NSMutableSetクラス
NSNotificationクラス
NSNotificationCenterクラス
NSNullクラス
NSNumberクラス
NSObjectクラス
NSObject UIKit追加分
NSObjectプロトコル
NSPersistentStoreクラス
NSPersistentStoreCoordinatorクラス
NSPredicateクラス
NSPropertyListSerializationクラス
NSRunLoopクラス
NSSetクラス
NSStringクラス
NSString UIKit追加分
NSTimerクラス
NSTimeZoneクラス
NSURLクラス
NSURLProtectionSpaceクラス
NSURLRequestクラス
NSUserDefaultsクラス
NSValueクラス

UIActionSheetクラス
UIActionSheetDelegateプロトコル
UIActivityIndicatorViewクラス
UIAlertViewクラス
UIAlertViewDelegateプロトコル
UIApplicationクラス
UIApplicationDelegateプロトコル
UIBarButtonItemクラス
UIBarItemクラス
UIButtonクラス
UIColorクラス
UIControlクラス
UIDatePickerクラス
UIDeviceクラス
UIEventクラス
UIFontクラス
UIGestureRecognizerクラス
UIImageクラス
UIImageViewクラス
UIKit Function
UILabelクラス
UINavigationControllerクラス
UINavigationItemクラス
UIPickerViewクラス
UIPickerViewDataSourceプロトコル
UIPickerViewDelegateプロトコル
UIPinchGestureRecognizerクラス
UIResponderクラス
UIScreenクラス
UIScrollViewクラス
UISearchBarクラス
UISearchBarDelegateプロトコル
UISegmentedControlクラス
UISliderクラス
UISwipeGestureRecognizerクラス
UISwitchクラス
UITableViewクラス
UITableViewCellクラス
UITableViewControllerクラス
UITableViewDataSourceプロトコル
UITableViewDelegateプロトコル
UITapGestureRecognizerクラス
UITextFieldクラス
UITextFieldDelegateプロトコル
UITextInputTraitsプロトコル
UITextViewクラス
UITextViewDelegateプロトコル
UIToolbarクラス
UITouchクラス
UIViewクラス
UIViewControllerクラス
UIWebViewクラス
UIWebViewDelegateプロトコル
UIWindowクラス

AVAudioPlayerクラス
AVAudioPlayerDelegateプロトコル

CADisplayLinkクラス
CAEAGLLayerクラス
CALayerクラス

CGAffineTransform
CGBitmapContext
CGColor
CGColorSpace
CGContext
CGGeometry
CGImage
CGPath

EAGLContextクラス
EAGLDrawableプロトコル

Foundation Constants
Foundation Data Types
Foundation Functions

MPMediaItemクラス
MPMediaItemArtworkクラス
MPMediaPlaylistクラス
MPMediaPropertyPredicateクラス
MPMediaQueryクラス
MPMusicPlayerControllerクラス

Randomization Services

System Sound Services
Amazon


OpenGL ES
SQLite
Monthly Archives
Recent Comments
Recent TrackBacks
RSS Link
Visitors
QR Code
QR