問題タブ [nsnotificationcenter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
660 参照

iphone - Windows Phone 7 は NSNotificationCenter に相当しますか?

私はWP7が初めてで、iPhone開発から来ました。iPhone では、プログラムに何かを通知するために NSNotificationCenter を使用していました。NSNotificationCenter は、すぐに使用できるフレームワークに組み込まれています。WP7に似たようなものはありますか?MVVM-Light Toolkit を見つけましたが、正しく使用する方法がわかりません。

私がしたいこと:

  • Notification-Id に登録し、Notification-Id が受信されたときに何かを行う
  • Notification-Id とコンテキスト (オブザーバーに渡すオブジェクト) を使用して通知を送信する
  • 同じ通知IDに登録した全員に通知されます

のようなもの: 登録

送信:

登録例:

送信 ...

0 投票する
1 に答える
1512 参照

iphone - Cocoa Touch - UITabBar ビューの読み込み中にアクティビティ インジケーターを表示する

「viewWillAppear」メソッドで Web から大量のデータをロードする 2 つのビューを持つ UITabBar アプリケーションがあります。このデータの取得中に進行状況バーまたはアクティビティ インジケーターを表示して、ユーザーがアプリがフリーズしていないことを確認したいと考えています。

私はこれが以前に尋ねられたことを知っています。かなり良い解決策と思われるものについて、明確にする必要があります。

例のコードを実装しました。質問の元の質問者は、データの取得を別の「スレッド」に入れることで、後で問題を解決しました。スレッドの概念は理解していますが、これをどのように実装するかはわかりません。

調査の結果、UI の更新はすべてメイン スレッドで行われるため、大量のデータ取得をすべてバックグラウンド スレッドに移動する必要があることがわかりました。

親切にも私に例を提供していただければ、とても感謝しています。必要に応じて、既存のコードの一部を提供できます。

0 投票する
4 に答える
8578 参照

iphone - 到達可能性ネットワーク変更イベントが発生しない

私のiphoneアプリは非常にシンプルで、すべてを処理する1つのビューがあります。viewDidLoadで、インターネットに接続されているかどうかを確認します。インターネットに接続されているかどうかを確認します。接続されている場合はWebからロードし、そうでない場合はローカルリソースからロードします。そして、これはうまくいきます。

handleNetworkChangeイベントをテストするために、すべてのセルラーデータをオフにしましたが、wifiはオンのままにしました。Wi-Fiの範囲内でアプリを起動しましたが、すべてが完璧に機能します。次に、wifiの範囲外を歩きますが、handleNetworkChangeが起動しません(uiAlertViewを使用してテスト済み)。Wi-Fiの範囲外に立つと、アプリはオフラインメッセージを正常に起動します。

私の疑惑は、これがViewControllerのライフサイクルの問題であるということですが、このコードをAppDelegate関数に配置する必要がありますか?おそらく、それは最初からより良い設計です。

0 投票する
1 に答える
9458 参照

iphone - iPhone の通知により、「認識されないセレクタがインスタンスに送信されました...」という結果になる

簡単に言うと、次のNSNotificationリスナーをClassA(in viewDidLoad)に登録しています。

で宣言されたセレクターがありClassA.hます:

そして、実装は次のようになります。

(方法ClassBtableView:didSelectRowAtIndexPath:)私は持っています:

それはすべて、次のようなエラーメッセージで終わります:

「認識できないセレクターがインスタンスに送信されました」

playSongメソッドが呼び出される前。

誰かここで私を助けてくれませんか? あるコントローラーから別のコントローラーに通知を投稿するときに、何を忘れていますか?

0 投票する
2 に答える
270 参照

iphone - NSNotifcationと非同期ダウンロードのヘルプ

あるビューから別のビューに通知を送信しています。私の問題は、cellForRowAtIndexPathメソッドで呼び出しているビューの通知が、テーブルビューがスクロールしているときにのみ送信されることです。これを停止して、画像がダウンロードされたら通知を送信するにはどうすればよいですか?これが私のコードです:https ://gist.github.com/756302

ありがとう

MKDev

0 投票する
3 に答える
5407 参照

objective-c - AppDelegateではNSNotificationpostNotificationNameですが、ViewControllerではNSNotificationCenterですか?

NSNotificationCenterでセレクターメソッドreceiveChatTextを実行できません。問題は、NSNotification postNotificationNameがAppDelegate.mにあるのに、NSNotificationCenterがViewController.mにあるためかどうか疑問に思っています。IEは、postNotificationNameがNSNotificationCenterが別のviewControllerファイルにあることを知ることができますか、それとも私がそれを伝える必要があることですか?

viewController.mで私は持っています

最上位のAppDelegate.mファイルには、次のものがあります。

didReceiveMessageが呼び出されたときにreceiveChatTextの実行を停止できるアイデアはありますか?

0 投票する
2 に答える
641 参照

iphone - NSNotificationCenter にブレークポイントを配置する

特定の名前のメモを投稿する NSNotificationCenter を中断する方法はありますか? なんらかの理由で期待されるメモを受け取っていないクラスがあります...

明確にするために編集:

MPMoviePlayerPlaybackDidFinishNotification のオブザーバーを追加しましたが、何らかの理由で通知が期待どおりに送信されていないように見えます。ここでの通常の障害は、何らかの理由でオブジェクトがオブザーバーとしてのサブスクライブを解除したことです (その部分のコードが有効に見えるにもかかわらず)。したがって、私の意図は、実際に特定のタイプの NotificationName を渡す NSNotificationCenter を中断できるかどうかでした。この場合、MPMoviePlayerPlaybackDidFinishNotification...

0 投票する
3 に答える
1404 参照

iphone - UIAccessibilityVoiceOverStatusChanged 通知を取得する方法

UIAccessibilityVoiceOverStatusChanged通知を取得するために実装する方法は?

以下のように試しましたが、何も起こりません:

0 投票する
4 に答える
25125 参照

macos - OS X: システム全体の keyDown イベントを検出しますか?

アプリケーションがフォーカスされていない場合でも、キーストロークを転送する必要がある Mac OS X 用のタイピング チューター アプリケーションに取り組んでいます。

おそらくNSDistributedNotificationCenterを介して、システムにキーストロークをアプリに転送させる方法はありますか? 私はばかげて自分自身をグーグルで検索しましたが、答えを見つけることができませんでした...

編集: 以下のサンプル コード

正しい方向に向けてくれた@NSGodに感謝します-メソッドを使用してグローバルイベントモニターaddGlobalMonitorForEventsMatchingMask:handler:を追加することになりました。これは美しく機能します。完全を期すために、私の実装は次のようになります。

私にとって、トリッキーな部分はブロックを使用していたので、誰かに役立つ場合に備えて少し説明します。

上記のコードで注意すべき点は、NSEvent に対する1 つのメソッド呼び出しであるということです。ブロックは引数として関数に直接渡さます。インライン デリゲート メソッドのようなものと考えることができます。これが私にとって沈み込むのに時間がかかったという理由だけで、私はそれをここで段階的に処理するつもりです:

この最初のビットは問題ありません。NSEvent でクラス メソッドを呼び出し、監視するイベント (この場合は NSKeyDownMask) を伝えます。サポートされているイベント タイプのマスクのリストは、こちらにあります。

ここで、ブロックを必要とするハンドラーという難しい部分に取り掛かります。

これを正しく行うにはいくつかのコンパイル エラーが発生しましたが、(Apple に感謝します) 非常に建設的なエラー メッセージでした。まず気になるのはカラット^。これは、ブロックの開始を示します。その後、括弧内に、

イベントをキャプチャするためにブロック内で使用する変数を宣言します。あなたはそれを呼び出すことができます

ブロック内でその名前を使用するだけです。あとは、これで終わりです。中括弧と括弧を閉じて、メソッド呼び出しを終了してください。

そして、あなたは完了です!これは本当に「ワンライナー」のようなものです。アプリ内のどこでこの呼び出しを実行しても問題ありません。AppDelegate の applicationDidFinishLaunching メソッドで実行します。次に、ブロック内で、アプリ内から他のメソッドを呼び出すことができます。

0 投票する
7 に答える
35339 参照

ios - iOS/iPhone の到達可能性 - Reachability.m/.h を使用して、インターネットが失われた/到達できない場合にのみ確認する方法

現在、私はapple reachability.m/.hによるクラスを使用していますが、ネットワークに到達できない場合にのみユーザーに通知したいので、変更を通知することを除いて動作します。現在、インターネットに接続していて、ネットワークを失うと、それが教えてくれます。ただし、ネットワークに再接続すると、望ましくないことも通知されます。損失がある/ネットワークがない場合にのみ教えてほしい。

私はそれが呼び出しと関係があると信じています:

を呼び出すとき-[NSNotificationCenter addObserver:selector:name:object:]、名前には文字通り名前である他の機能がありますか? NSNotificationCenter を使用するのはこれが初めてなので、この問題に精通していません。

編集:

ここに私のcheckNetworkStatus機能があります:

}