武之新
[iPhone]UIWebViewで困ってること

相変わらずUIWebViewと戯れているわけですが、いまのところ次の2点で困っていたりします。

  1. リンクを長押ししたときに表示されるActionSheetのカスタマイズ方法がわからない
  2. 新しいWindowを開こうとしていることを検知できない

iOS4.2だと、長押ししているとUIWebBrowserViewに longPressGestureCanTransitionToRecognizedState: というメッセージが送られてきているようなので、このselectorを書き換えてしまえばなんとかなりそうです。
ですが、UIWebBrowserView は非公開クラスなので、いつ実装が変わるかわからないのであまり適切な方法ではなさそうです。

一番困っているのは2のほうで、Aタグの場合(<a href=”hoge” target=”_blank”>等の場合)は検知ができているのですが、Javascriptでwindow.openしようとしていることが検知できなかったりしています。
AppStoreでタブブラウザをいくつかダウンロードしてみたのですが、window.openもきちんと別タブにするアプリもあり、なんらかの方法で検知できるようです。はてさて。。