NSNotificationcenterのobjectプロパティの使用方法
2023-10-04 09:08:04
質問内容
どなたか、NSNotifcationCenterのobjectプロパティの使い方を教えていただけませんか。私はそれを私のセレクタメソッドに整数値を渡すために使用できるようにしたい。
これは、私のUIビューで通知リスナーをセットアップする方法です。整数値を渡したいので、nil を何に置き換えたらいいかわかりません。
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(receiveEvent:) name:@"myevent" object:nil];
- (void)receiveEvent:(NSNotification *)notification {
// handle event
NSLog(@"got event %@", notification);
}
このように、別のクラスから通知をディスパッチしています。この関数はindexという名前の変数を渡されます。この値で、どうにかして通知を発火させたいのです。
-(void) disptachFunction:(int) index
{
int pass= (int)index;
[[NSNotificationCenter defaultCenter] postNotificationName:@"myevent" object:pass];
//[[NSNotificationCenter defaultCenter] postNotificationName:<#(NSString *)aName#> object:<#(id)anObject#>
}
どのように解決するのですか?
この
object
パラメータは通知の送信者を表し、通常は
self
.
余計な情報を渡したい場合は
NSNotificationCenter
というメソッドを使います。
postNotificationName:object:userInfo:
このメソッドは、(自由に定義できる)任意の値の辞書を受け取ります。 コンテンツは実際の
NSObject
インスタンスである必要があり、整数のような整数型ではありません。
NSNumber
オブジェクトで包む必要があります。
NSDictionary* dict = [NSDictionary dictionaryWithObject:
[NSNumber numberWithInt:index]
forKey:@"index"];
[[NSNotificationCenter defaultCenter] postNotificationName:@"myevent"
object:self
userInfo:dict];
関連
-
[解決済み] アトミック属性と非アトミック属性の違いは何ですか?
-
[解決済み] キーボードがあるときに、UITextFieldを編集開始時に上に移動させるには?
-
[解決済み] Objective-CでNSNotificationCenterを通してメッセージを送受信する?
-
[解決済み] NSNotificationCenterのaddObserver in Swift
-
[解決済み] UILongPressGestureRecognizerが押し下げ時に2回呼び出される
-
[解決済み] UIViewの下に影を描くには?
-
[解決済み] UITableViewHeaderFooterView。背景色を変更できない
-
[解決済み] モバイルアプリにおけるOAuthの秘密
-
[解決済み] Mac OS Xのスタティック・ライブラリ(.a)のターゲット・アーキテクチャはどのように決定するのですか?
-
[解決済み] AppDelegate.mで画面上に現在表示されているUIViewControllerを取得する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Cocoapodsの使用時にXcodeの警告を無視する
-
[解決済み] 私のアプリケーションは「暗号を含む」のでしょうか?
-
[解決済み] iOSの配布証明書の正しい更新方法
-
[解決済み】「推奨アイコンファイルがありません - バンドルには、ちょうど「120x120」ピクセル、.png 形式の iPhone / iPod Touch 用のアプリアイコンが含まれていません。
-
[解決済み] TabBarのタブビューにプログラムで切り替える?
-
[解決済み] 静的ライブラリのObjective-Cカテゴリ
-
[解決済み] UIImageのアスペクト比と幅を維持したリサイズ
-
[解決済み] 指定されたエンタイトルメント...プロファイルです。(0xE8008016)と表示されました。エラー iOS 4.2
-
[解決済み] iPhone UIViewアニメーションのベストプラクティス
-
[解決済み] cocoaアプリケーションのinfo plistにある「bundle display name」と「bundle name」の違いは何ですか?