TWRequestでハマっていたけどリファレンスを読まなかった.

どうして私が公式を読まないのか.
「私がひっかかっているのはそんな単純な部分ではないのだ」
と思い込んでいるからでしょう.自分の頭が大変残念です.

というわけで,TWRequestを使っていたところ,ツイートのポスト周りでUIAlertViewを表示させると,アラート表示後にボタンを押下して消去されたにもかかわらず,アラートの周りを覆っていた薄暗いスクリーンだけ残るという現象に10数時間悩まされていました.

10数時間後に公式リファレンスを確認したところ

The handler to call when the request is done. 
The parameters for this handler are described in TWRequestHandler.
This handler is not guaranteed to be called on any particular thread.

とありました.要するにメインスレッドで実行される保証はないと.

dispatch_async(dispatch_get_main_queue(), ^{
  //アラート表示
});

として,すぐに解決しました.
実に残念です.

カテゴリー: iOSアプリ開発, 技術的なこと パーマリンク