問題タブ [mapactivity]

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 投票する
1 に答える
423 参照

android - マップ アクティビティの単一マップビュー

マップ上にいくつかのマーカーがあり、メイン ページに戻るボタンがあるマップ ビューがあります。選択すると、「View Map」ボタンのある新しいページが開きます。「地図を見る」ボタンで地図が開きます。選択した各ページには、異なるマーカーである異なるマップ ビューがあります。

問題は :

テキストビューのリストと「ビューマップ」ボタンを選択するとうまくいきます。ボタンバックもしっかり機能。ただし、別のリストを選択してボタン ビュー マップをクリックすると、debug force close が表示されます。解決策を探すと、DDMS は「1 つの mapactivity で 1 つの mapview しか持てない」ことを示しています。Androidマニフェストで別のクラスを作成したり、新しいアクティビティを作成したりせずに、より簡単な方法でこの問題を解決するにはどうすればよいですか?

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

android - Androidマップコントロール

インテントを使用してエミュレーター/デバイスでデフォルトのマップアプリを起動する場合、マップのクリック/タッチを制御するにはどうすればよいですか。たとえば、自分の場所にあるすべてのピザ店を検索したい。geo URIを使用すると、非常に簡単です。String uri = "geo:" + 39.967571 + "、" + -75.532123 + "?q = pizza"; startActivity(new Intent(android.content.Intent.ACTION_VIEW、Uri.parse(uri))); マップが開始されたら、制御を失い、ユーザーがクリックした場所に基づいていくつかの値を抽出できるようにしたいと思います。

MapActivityを拡張すると、希望するもの、つまりパラメーターに基づくビジネスのリストが得られません。インテントmyIntent=new Intent(YYYYY.this、XXXX.class); YYYYY.this.startActivity(myIntent); これにより、MapActivityを拡張するXXXXアクティビティが起動します。現在の場所に基づいてピザの場所のリストを取得するにはどうすればよいですか。パラメータを使用してジオコーダを使用してみましたが、結果はまったく信頼できませんでした。

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

android - mylocationオーバーレイとタイマーを使用したConcurrentModificationException

この問題は私の頭を悩ませてきました、そしてあなたが助けてくれることを願っています!私は以前にここで多くの問題に対する答えを見つけました、そしてあなたの人々があなたの魔法を再び働かせることを願っています:)

さて、私のアプリの一部はGoogle Maps APIを使用して、地図上にオーバーレイを表示し(カスタムオーバーレイクラスを使用)、mylocationoverlayを使用してユーザーの場所を表示します。mylocationoverlayをアクティブにしないと、すべてが正常に機能しますが、アクティブにすると、アプリの強制は。で閉じますConcurrentModificationException

オーバーレイの位置は常に変化するため、タイマーを使用してオーバーレイを更新します。このために、非同期タスクを使用してオーバーレイを削除し、更新された位置で新しいオーバーレイを追加しました。mylocationoverlayがバックグラウンドで同様のことを行うと仮定するのは正しいですか?その仮定が有効である場合、mylocationoverlayと非同期タスクが同じ配列を同時に反復/変更しようとしているという結論に達しました。唯一これは、これが起こらないようにする方法がわかりません!

コードが非常に大きいため、ここに実際に投稿することはできませんが、commonsguyによって作成されたgithubから取得したサンプルコードを使用し、同じ問題が発生するように変更しました。

これは本当に私を苛立たせているので、どんな助けでも大歓迎です。事前に感謝し、長い説明をお詫びします!

編集:commonsguyコードのリンクは-https: //github.com/commonsguy/cw-advandroid/blob/master/Maps/NooYawkAsync/

編集2:Javaコードの後に​​エラートレースを追加しました。

スタックトレース:

java.util.ConcurrentModificationException at java.util.ArrayList $ ArrayListIterator.next(ArrayList.java:573)at com.google.android.maps.OverlayBundle.draw(OverlayBundle.java:44)atcom.google.android.maps。 MapView.onDraw(MapView.java:494)at android.view.View.draw(View.java:6740)at android.view.ViewGroup.drawChild(ViewGroup.java:1640)at android.view.ViewGroup.dispatchDraw(ViewGroup .java:1367)at android.view.ViewGroup.drawChild(ViewGroup.java:1638)at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1367)at android.view.ViewGroup.drawChild(ViewGroup.java:1638) android.view.ViewGroup.dispatchDraw(ViewGroup.java:1367)at android.view.View.draw(View.java:6743)at android.widget.FrameLayout.draw(FrameLayout.java:352)atandroid.view。 android.view.ViewGroup.dispatchDraw(ViewGroup.java:1367)のViewGroup.drawChild(ViewGroup.java:1640)android。view.View.draw(View.java:6743)at android.widget.FrameLayout.draw(FrameLayout.java:352)at com.android.internal.policy.impl.PhoneWindow $ DecorView.draw(PhoneWindow.java:1847) android.view.ViewRoot.draw(ViewRoot.java:1407)at android.view.ViewRoot.performTraversals(ViewRoot.java:1163)at android.view.ViewRoot.handleMessage(ViewRoot.java:1727)atandroid.os。 Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:123)at android.app.ActivityThread.main(ActivityThread.java:4627)at java.lang.reflect.Method.invokeNative (ネイティブメソッド)at java.lang.reflect.Method.invoke(Method.java:521)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:878)at com.android.internal.os .ZygoteInit.main(ZygoteInit.java:636)at dalvik.system.NativeStart.main(ネイティブメソッド)FrameLayout.draw(FrameLayout.java:352)at com.android.internal.policy.impl.PhoneWindow $ DecorView.draw(PhoneWindow.java:1847)at android.view.ViewRoot.draw(ViewRoot.java:1407)at android .view.ViewRoot.performTraversals(ViewRoot.java:1163)at android.view.ViewRoot.handleMessage(ViewRoot.java:1727)at android.os.Handler.dispatchMessage(Handler.java:99)atandroid.os.Looper。 loop(Looper.java:123)at android.app.ActivityThread.main(ActivityThread.java:4627)at java.lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method。 java:521)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:878)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)at dalvik.system.NativeStart .main(ネイティブメソッド)FrameLayout.draw(FrameLayout.java:352)at com.android.internal.policy.impl.PhoneWindow $ DecorView.draw(PhoneWindow.java:1847)at android.view.ViewRoot.draw(ViewRoot.java:1407)at android .view.ViewRoot.performTraversals(ViewRoot.java:1163)at android.view.ViewRoot.handleMessage(ViewRoot.java:1727)at android.os.Handler.dispatchMessage(Handler.java:99)atandroid.os.Looper。 loop(Looper.java:123)at android.app.ActivityThread.main(ActivityThread.java:4627)at java.lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method。 java:521)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:878)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)at dalvik.system.NativeStart .main(ネイティブメソッド)draw(PhoneWindow.java:1847)at android.view.ViewRoot.draw(ViewRoot.java:1407)at android.view.ViewRoot.performTraversals(ViewRoot.java:1163)at android.view.ViewRoot.handleMessage(ViewRoot.java :1727)android.os.Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:123)at android.app.ActivityThread.main(ActivityThread.java:4627)at java .lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:521)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:878) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)at dalvik.system.NativeStart.main(ネイティブメソッド)draw(PhoneWindow.java:1847)at android.view.ViewRoot.draw(ViewRoot.java:1407)at android.view.ViewRoot.performTraversals(ViewRoot.java:1163)at android.view.ViewRoot.handleMessage(ViewRoot.java :1727)android.os.Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:123)at android.app.ActivityThread.main(ActivityThread.java:4627)at java .lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:521)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:878) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)at dalvik.system.NativeStart.main(ネイティブメソッド)1727)android.os.Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:123)at android.app.ActivityThread.main(ActivityThread.java:4627)atjava。 lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:521)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:878)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)at dalvik.system.NativeStart.main(ネイティブメソッド)1727)android.os.Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:123)at android.app.ActivityThread.main(ActivityThread.java:4627)atjava。 lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:521)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:878)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)at dalvik.system.NativeStart.main(ネイティブメソッド)main(ZygoteInit.java:636)at dalvik.system.NativeStart.main(ネイティブメソッド)main(ZygoteInit.java:636)at dalvik.system.NativeStart.main(ネイティブメソッド)

0 投票する
0 に答える
1147 参照

android - タブホストにロードされたMapActivityでは戻るボタンが機能しない

設定:
画面1:都市選択画面(ホーム画面)
画面2:1つのタブのマップアクティビティと別のタブのリストビューで構成されるタブホスト。

問題: ホーム画面からマップアクティビティにアクセスすると、戻るボタンが機能しません。実際、それは何もしません。「OnBackPressed」関数をオーバーライドして、呼び出しを受信するかどうかを確認しようとしています...

何も出てこない。ホーム画面に戻るはずです。エミュレーターとAndroidデバイスの両方で同じ結果を試しました。

何が機能しますか

  • (タブホストではなく)マップを単独で起動すると、戻るボタンが正常に機能します
  • タブ2のリストビューにある場合、戻るボタンは正常に機能します

onBackPressedイベントを受け入れている可能性のある他の何かがマップビューからスコープを奪っている可能性はありますか?また、タブホストを保持しているアクティビティがonBackPressedイベントを受け入れているかどうかを確認しようとしましたが、受け入れていません。

他に何か考えはありますか?

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

android - サーバーからオーバーレイデータが取得されるのをTabActivityのMapActivityに待機させるにはどうすればよいですか?

したがって、私のプログラムには、2 つのタブを含む TabActivity があります。1 つのタブは ListView で、もう 1 つは Intent を介して開始される MapActivity です。私のアプリでやりたいことは、電話の場所と製品の名前を含むクエリを送信し、この製品を持っている最寄りのショップのリストを取得し、それらのショップをマップタブに表示し、それらのリストを別のタブに表示することです. アプリは、TabActivity が開始されると場所のリッスンを開始し、サーバーとの通信 (AsyncTask 内) は場所が取得されるとすぐに開始されます。

問題は、TabActivity が開始すると、最初のタブにあるため MapActivity も開始し、MapActivity はマップにオーバーレイを追加しようとし始めますが、TabActivity の AsyncTask が終了していないため、これらのオーバーレイのデータがまだないことです。サーバーからデータをまだ取得していないため、プログラムがクラッシュします。

TabActivity が最初に開かれたときにアプリで空の Google マップを表示し、サーバーからデータが取得されるのを待ってから、マップにオーバーレイを追加してショップをマークする必要があります。どうすればこれを達成できるか教えてもらえますか? MapActivity の onCreate からコードのオーバーレイ作成部分を削除し、別の場所に配置する必要があると思いますが、どこにあるのかわかりません。

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

android - Android で SQLite テーブルからデータを取得する方法

SQLite を使用してデータを保存および取得する Android でマップ アプリケーションを実行しています。そのため、緯度と経度を格納するテーブルを作成しますが、SQLite から緯度と経度の値を取得して、マップ アクティビティの緯度と経度の値にバインドする方法がわかりません。

誰でも私を助けることができますか?

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

android - Google マップでの Android の強制終了: java.lang.NoSuchFieldException: loading_tile_android

アプリケーション内で Google マップ (MapActivity クラス) を起動すると、Android ユーザーの 1 人が強制終了します。彼は MissingResourceException を取得します。今のところ不満を言っているのは彼だけで、彼は Vanilla Tazz 電話を使用しています。Google マップ アプリケーション自体は、彼のデバイスで問題なく動作します。バニラ・タズ特有のもののようです。オンラインで修正を見つけようとしましたが、成功しませんでした。Android のエラー ログは次のとおりです。

誰かがこれを修正するために何か提案できれば幸いです。

0 投票する
8 に答える
59646 参照

android - Android MapActivity : 接続ファクトリ クライアントを取得できませんでした

Google API サンプル プロジェクトで提供されているように、地図のデモを機能させようとしています。私は AVD を使用しており、バージョン 8、10、および 11 で試しましたが、同じ問題が発生します。

独自のデバッグ キーを生成し、プロジェクトに追加しました。アプリの起動時にマップを表示したり、ズームインしたりできるので、マップ タイルを取得できます。はい - マニフェスト ファイルに正しいアクセス許可とライブラリ セットがあります (サンプルに従って)。

しかし、DDMS または Telnet のいずれかを介して、マップ上で場所を設定できません。LogCat に次のエラーが表示されます: MapActivity : Couldn't get connection factory client

この問題に関する多くのスレッドを読みましたが、それらは常に API キーが正しくないことが原因のようです。マップ タイルを取得しているため、これはありません。

そこで、これをさらにテストするために独自のプロジェクトを作成し、マップの初期化時に次のコードを実行しています。

最初のログ ステートメントは表示されますが、2 番目のログ ステートメントは表示されず、その時点で「MapActivity : 接続ファクトリ クライアントを取得できませんでした」が LogCat に書き込まれます。

SDK v8 エミュレーターに問題があることを読んだので、v10 と 11 で試してみましたが、それでも満足できません。私はまだ実際のデバイスでこれを試していません - すぐにやります.

この問題に関するヘルプは大歓迎です-それは本当に私を困惑させています;)

乾杯

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

android - マップを中心とする他の位置にアニメーション化する方法

MapActivity を拡張するアクティビティがあり、onCreate()内にこのコードがあります

それはアニメーション化しますが、アニメーション化すると、ポイントは画面の中央にあり、画面上の固定(X、Y)位置に配置したいです。mc.animatetoLeftBottom(point) 関数はありますか?

編集:私は Projection p = mapView.getProjection(); point = p.fromPixels(50, 60); mc.animateTo(point);

写真: アプリを起動すると、次のようになります。

イニシャル

ピンを1回タップすると、次のようになります

ワンタップ後

ピンをもう一度タップすると、次のようになります。

2回タップした後

これは、どこからタップしても、またはスクロールしてズームしてからもう一度タップしても、次のように表示されるはずです。

それがどうあるべきか

私が欲しいのは、ピンをタップしたときに自動的にその位置に移動することです(最後の写真を参照)