MapActivityを継承したアクティビティで、ダブルタップしても地図がズームインしないので、これはGoogleMapの仕様に合わせたいなぁと試行錯誤した結果を記します。正直、しんどかった。 まぁ、似たようなことを考えている人は世の中にもおられるもので、そこを参考にさせてもらいました。 特定のタップイベント時にMapViewから座標を取得する まぁ上記のサイトにも書かれているのですが、OnGestureListenerをimplementsしただけでは、MapActivityはタップイベントを拾ってくれません。理由はMapViewが先に拾っちゃうからです。原因がわかったとしても、じゃあどうすればいいか。それがなかなかわからなかったんですが、上記のサイトでヒントを書いてくれてるので、それを参考にします(上記のサイトのは俺がいうのも何だけど、完璧ではなかった…) 下のソースは実際に使ってるも
Androidアプリのデータ保存方法の「プリファレンス」の使い方は? Androidアプリでは、いくつかのデータ保存方法が用意されていますが、最も簡単に扱える方法が、この「プリファレンス(Preference)」であると思います。 プリファレンスは、データを、キー名と値の組み合わせで保存する形をとります。 JavaでいうHashTableや、VB等のDictionaryのような感じですね。 データの量や保存したい形にもよりますが、数個の設定値を保持させておきたいぐらいであれば、このプリファレンスで事足りると思います。 それでは、サンプルコードとともに、プリファレンスの使い方をみていきましょう。 プリファレンスの保存方法 まずは保存時の処理の説明です。 保存するデータの型は、boolean型、float型、int型、long型、String型が使えます。 String型のデータを保存するとき
※このエントリは「東京てら子14、自由発表枠」で発表した内容をまとめたものです。 タイトル通りなのですが、 Air for Andorid カメラアプリ作成してみてつまずいた部分です。 CameraUI で撮影して AIR に渡される画像の回転方向が機種によって違うのです。(;´Д`)ウソーン ※例えば 「横向き撮影がデフォルトとして設計されている機種(GalraxyTabとか)」があるようで、 本体を立てて撮影しても、−90度回転した状態でAIRに渡ってきます。 解決策は? AIR からは Android の機種を判定できないので、方法としては [1] : 画像を回転させる UI を作りユーザーが任意に回転出来るようにする。 [2] : Exif の回転情報を元に補正する。 などがあると思います。 今回は [2] : Exif の回転情報を元に補正について書いていきます。 E
先日、Adobe Developer Connection に Android アプリケーションの画面の向きを、縦にしたり横にしたりする方法について書きました。 Android 向け AIR アプリケーションと画面の回転の実現 パート 1 Android 向け AIR アプリケーションと画面の回転の実現 パート 2 画面を回転させる方法は、大きく 2 種類に分けられます。 AIR の自動回転機能を使うものと、全てをスクリプトから制御するものです。2 つの記事の内、パート 1 は自動回転を利用する場合、パート 2 は利用しない場合のシナリオを解説しています。 (可能であれば、パート 1 に紹介している自動回転機能を有効にして、RESIZE イベントで表示を制御する方法が楽だと思います) さて、AIR 2.6 では、iOS と Android 間の API の整合性を高めるため、いくつかの変更
Andoid は 4 つの仮想キー (ホーム、メニュー、サーチ、バック) を持つデバイス上で実行されます。これらのキーは、デバイスによって、ハードウェアキーとして実装されることもあれば、ソフトウェアキーとして実装されることもあります。この記事では、これら 4 つのキーが押された場合の処理方法と、AIR アプリケーションに固有の注意点を解説します。 必要な環境 Flash® Professional CS5 体験版 Adobe Flash Professional CS5 Extension for AIR 2.5 Adobe Labs からダウンロードしてインストール Flash Builder 4 体験版 Adobe AIR 2.5 SDK Adobe 製品ページからダウンロード Android デバイス Android 2.2 以降がインストールされているもの Andro
Androidはアニメーションを最初から重要視 「アニメーション」機能は、Androidが提供するそのほかの機能に比べると、実用度は低いように感じられますが、実はバージョン1.0よりも以前からアニメーションはAPIとして開発者に提供されています。 その後、追加された機能に優先して、アニメーションが初めから用意されているのは、なぜでしょうか。 それは、「Androidにとってアニメーション機能は重要であるから」にほかなりません。 よくAndroidと比較されるiPhone/iPadは、素晴らしいアニメーションのエフェクトを持つGUIが備わっています。「いまどきのスマートフォンやモバイルデバイスは、カッコいいエフェクトが備わっていないとエンドユーザーに選ばれない」ということかもしれません。 Androidはシステム全体を通してアニメーションが駆使できるように設計されています。「メニューを開く」
Android PreferenceActivityにonSharedPreferenceChangedを使う時に注意する こと PreferenceActivityについては、以前Android アプリケーションの設定画面の作り方という記事で簡単に記載しました。ソフトウェアの設定画面等で使用するために用意されている、PreferenceActivityは、XMLファイルを作成するだけで自動的に値の保存、初期値設定等行うので非常に便利です。 設定画面上で変更が加わった時に呼ばせることができる、onSharedPreferenceChangedというコールバック関数がありますが、これで少しつまずいたので解説です。 onSharedPreferenceChangedとはSharedPreferenceの値が変更になった時に呼ばれるコールバック関数です。 ユーザにより設定が変更された時に、Pre
Androidアプリ作成の基本“Activity”とは何か?:Androidで動く携帯Javaアプリ作成入門(2)(1/2 ページ) 本連載で、SDKとEclipseを使ってAndroidの携帯端末で動くJavaアプリを作成し、Android Market配布を目指しましょう。開発者向け実機の登場やOHA参加14社増などの話題で盛り上がるAndroid。今回は、基本Activityとライフサイクルについて。 開発者向け実機、新Android端末、OHAに14社参加 2008年12月7日、グーグルは開発者向けにSIMロックフリーの端末「Android Dev Phone 1」を発売しました(参考:SIMロックフリーAndroid端末、399ドルで提供へ)。それに伴い、「Android SDK 1.0 Release 2」がリリースされました。前回の「Androidアプリの開発環境を準備」をお
Androidは、マルチスクリーンに対応しています。 これはどういう事かというと、解像度の異なる端末でも、同じように表示させる事ができる仕組みです。 ピクセル指定で画像を作成したり、プログラム上でレイアウトを制御すると、 高解像度の端末では、横幅が足りなかったり、ボタンが小さくて押せない、といった現象が起きます。 その為、解像度の異なる端末でも、一つのバイナリで対応させるには、それらを考慮した 実装が必要になります。 その解決法のいくつかをご紹介します。 1.layout.xmlにて、dip指定でサイズを指定 dipというのは、device-independent pixelの略で、直訳しますと 端末に依存しないピクセル となります。 これはどういう単位か、というと、160 dpiの1ピクセルの物理的な大きさを1dipと定義しています。 つまり、320dpiのスクリーン
Size of this PNG preview of this SVG file: 749 × 599 pixels. Other resolutions: 300 × 240 pixels | 600 × 480 pixels | 960 × 768 pixels | 1,280 × 1,024 pixels | 2,560 × 2,048 pixels | 2,562 × 2,050 pixels.
各社から様々なAndroid端末が発売されていますが、それらの解像度は様々です。 現在、メジャーなのはWVGAでしょうか。DesireやXperiaなどの主力機種はWVGAです。Desireとほぼ同じハードウェアであるNexus OneもWVGAですね。国内で最初に発売されたAndroid端末であるHT-03AはHVGAで、海外に目を向けるとXperia miniやHTC WildfireなどQVGA端末も存在します。 では、それら全ての端末に向けてアプリケーションを開発しようとすると、別々のバイナリを用意する必要があるのでしょうか? もちろん、その必要はありません。 Androidには画像リソースをDPI(dot per inchの略。ピクセル解像度。)ごとに用意することで、自動で端末のDPIに合わせた画像を読み込む仕組みがあります。 それでは続きで説明します。 画像リソースフォルダ こ
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
本記事はAndroid DevelopersのDesigning for Seamlessnessを意訳、加筆したものです。Androidアプリをシームレスに連携させるためのノウハウを紹介します。 特性を理解する アプリケーションが高速に動作し、レスポンスが良くても、アプリケーション遷移やダイアログ表示を乱用した無計画なUI、不用意なデータの喪失、意図しないタイミングでの操作妨害など知らず知らずのうちにUXの良くない設計になっているかもしれません。これらの問題はどのように避ければ良いでしょう? アプリケーションが動作するコンテキスト Androidフレームワークの特性(アプリケーションへどんな影響を与えるか) を理解することが開発の手助けになります。 ユーザ操作を妨げない ユーザ操作のシームレス性で問題になるケースとしてよくあるのが、他のアクティブなアプリケーションを無視して、自分のダイア
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く