• ブログ
  • Photoshare
  • キーワード
  • ブックマーク
  • ふぉとす
  • 写真
  • ログイン

kaeruspoon

« ファンタは好きだけど | MySQLコンファレンス2008 2日目に参加してきました。 »
  • iPhoneアプリで地図をぐりぐり動かす方法。 2008-10-27 23:45:56 Append 624

    iPhoneアプリは数多しれずだけど、デフォルトのマップアプリのように地図を表示して動かせるアプリは意外にも少ない。その理由は単純で、マップに関するクラスが用意されていないからだ。
    iPhoneアプリの開発に入る前は、マップクラスのようなものが用意されていて(UIMapViewみたいな)、簡単に地図をぐりぐり動かせると思っていたのだけど、そうは問屋が卸さなかった。そんなものないのだ。
    で、アプリで地図を動かそうとすると、なかなかにメンドくさいことをやらないといけない。
    ぼくが今のところ考えている方法はふたつあって、ひとつはUIWebViewを使ってgoogle Map APIを利用する方法。もうひとつはタイル状の地図のイメージを周囲の移動時のバッファ分も含めて取得しておく方法。ぼくが実際に採用したのは前者の方法だ。

    1.UIWebViewで、表示領域いっぱいに地図を表示するように設定したweb上のページにアクセスする(UIWebView自体はイベントを無視するようにしておく)。
    2.タッチパネルのイベントをキャッチして、その動きを実現するようにJavascriptのコードを生成し、UIWebViewに投げてあげる。
    3.地図上のピンや、ボタンなどは、iPhone側のオブジェクトとして配置する。

    この方法で実装した地図は、iPhone Simulator上ではストレスなく気持ちよく動く。まったく問題ない。しかしiPhone実機上ではレスポンスの悪い動きになってしまう。アクションにワンテンポ遅れて地図がついてくるのだ。さらに拡大・縮小がとても遅い。拡大・縮小に関しては仕方なくそれ用のボタンを配置したけど、はっきりいってカッコ悪い。
    レスポンスを求めるなら、二番目の方法を試してみたほうがよさそう。だれかもっとうまいやり方を持っていたら教えてほしいな。

    Commentコメント(0) Pageリンク元(500)
« ファンタは好きだけど | MySQLコンファレンス2008 2日目に参加してきました。 »

プロフィール

おおいしつかさ

過去の記事

2006年
12月
2007年
1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2008年
1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2009年
1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2010年
1月 2月 3月

キーワード一覧

ActionScript Ajax AmazonResources Erlang git github iPhone javascript Javascript Kaerukeyword kaeruspoon Mac merb milook MiyazakiResistance NSR Objective-C perl Perl Rails Ruby Ruby on Rails RubyKaigi speedpetal subversion Thin Thinkpad tokyobike TRPG twitter ubuntu Ubuntu VAIO VAIO typeZ Waves WordScoop Xen ぐりぐり しろさん カンタロー スノボー ドトール ドライブ バイク プログラミング ユルさん 執筆 宮崎 日本酒 模型 猫 町田 真中洋嗣 自転車
Baner