0

Google マップ ビューをスワイプした後、別のアクティビティまたは画面に移動したい。しかし、それは私に例外を与えています。「 ViewPager」APIを使用してこれを達成しようとしています。別のアクティビティにスワイプすることは可能ですか。

例外:

Constructor.constructNative(ネイティブ メソッド) 07-23 12:22:08.906: E/AndroidRuntime(806): java.lang.reflect.Constructor.newInstance(Constructor.java:415) 07-23 12:22:08.906: E /AndroidRuntime(806): android.view.LayoutInflater.createView(LayoutInflater.java:505) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 25 07-23 12:22:08.906 : E/AndroidRuntime(806): 原因: java.lang.IllegalArgumentException: MapViews は MapActivity のインスタンス内でのみ作成できます。07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:291) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:264) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java: 247) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 28 もっと見る constructNative(ネイティブ メソッド) 07-23 12:22:08.906: E/AndroidRuntime(806): java.lang.reflect.Constructor.newInstance(Constructor.java:415) 07-23 12:22:08.906: E/AndroidRuntime (806): android.view.LayoutInflater.createView(LayoutInflater.java:505) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 25 07-23 12:22:08.906: E /AndroidRuntime(806): 原因: java.lang.IllegalArgumentException: MapViews は、MapActivity のインスタンス内でのみ作成できます。07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:291) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:264) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java: 247) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 28 もっと見る constructNative(ネイティブ メソッド) 07-23 12:22:08.906: E/AndroidRuntime(806): java.lang.reflect.Constructor.newInstance(Constructor.java:415) 07-23 12:22:08.906: E/AndroidRuntime (806): android.view.LayoutInflater.createView(LayoutInflater.java:505) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 25 07-23 12:22:08.906: E /AndroidRuntime(806): 原因: java.lang.IllegalArgumentException: MapViews は、MapActivity のインスタンス内でのみ作成できます。07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:291) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:264) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java: 247) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 28 もっと見る 22:08.906: E/AndroidRuntime(806): java.lang.reflect.Constructor.newInstance(Constructor.java:415) 07-23 12:22:08.906: E/AndroidRuntime(806): android.view.LayoutInflater .createView(LayoutInflater.java:505) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 25 07-23 12:22:08.906: E/AndroidRuntime(806): 原因: java .lang.IllegalArgumentException: MapView は、MapActivity のインスタンス内でのみ作成できます。07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:291) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:264) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java: 247) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 28 もっと見る 22:08.906: E/AndroidRuntime(806): java.lang.reflect.Constructor.newInstance(Constructor.java:415) 07-23 12:22:08.906: E/AndroidRuntime(806): android.view.LayoutInflater .createView(LayoutInflater.java:505) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 25 07-23 12:22:08.906: E/AndroidRuntime(806): 原因: java .lang.IllegalArgumentException: MapView は、MapActivity のインスタンス内でのみ作成できます。07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:291) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:264) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java: 247) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 28 もっと見る Constructor.newInstance(Constructor.java:415) 07-23 12:22:08.906: E/AndroidRuntime(806): android.view.LayoutInflater.createView(LayoutInflater.java:505) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 25 more 07-23 12:22:08.906: E/AndroidRuntime(806): 原因: java.lang.IllegalArgumentException: MapViews は、MapActivity のインスタンス内でのみ作成できます。07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:291) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:264) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java: 247) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 28 もっと見る Constructor.newInstance(Constructor.java:415) 07-23 12:22:08.906: E/AndroidRuntime(806): android.view.LayoutInflater.createView(LayoutInflater.java:505) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 25 more 07-23 12:22:08.906: E/AndroidRuntime(806): 原因: java.lang.IllegalArgumentException: MapViews は、MapActivity のインスタンス内でのみ作成できます。07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:291) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:264) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java: 247) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 28 もっと見る createView(LayoutInflater.java:505) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 25 07-23 12:22:08.906: E/AndroidRuntime(806): 原因: java. lang.IllegalArgumentException: MapView は、MapActivity のインスタンス内でのみ作成できます。07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:291) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:264) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java: 247) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 28 もっと見る createView(LayoutInflater.java:505) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 25 07-23 12:22:08.906: E/AndroidRuntime(806): 原因: java. lang.IllegalArgumentException: MapView は、MapActivity のインスタンス内でのみ作成できます。07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:291) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java:264) 07-23 12:22:08.906: E/AndroidRuntime(806): com.google.android.maps.MapView.(MapView.java: 247) 07-23 12:22:08.906: E/AndroidRuntime(806): ... 28 もっと見る

ありがとう。

4

1 に答える 1

0

ログには、エラーの理由が明確に示されています。

原因:java.lang.IllegalArgumentException:MapViewsは、MapActivityのインスタンス内でのみ作成できます。

言い換えれば、あなたのActivity拡張を持っていますMapActivity

ただし、明らかなエラーに加えて、自分が何を求めているのかを再考することをお勧めします。MapViewを内部で動作させることができたとしてもViewPager(技術的には不可能ではありません)、ユーザーの操作はどのようになりますか?との両方で、主なユーザー操作方法としてスワイプアクションを使用しますViewPagerMapViewどちらにバイアスをかける必要がありますか?の場合ViewPager、マップをパンすることはできません。逆に、マップ上でのパンを許可すると、異なるページ間をスワイプすることはできません。

とにかく、ただの考え。もちろん、それは完全にあなた次第です。ちなみに、GitHubのandroid-support-v4-googlemapsMapViewプロジェクトに興味があるかもしれません。これにより、の内部を使用できるようになりますFragment

于 2012-07-23T08:54:44.313 に答える