2013-07-22 131 views
1

我想在Google地圖中添加此按鈕。 點擊後,它會顯示該地點的位置。 但是,當我運行它時,它給了我一個強制關閉錯誤。Google地圖V2按鈕無法加載

我現在要使它工作的按鈕是「城市」 按鈕的另外2個,我還沒有設置它。

這是我的logcat錯誤。

07-22 14:50:19.260: E/AndroidRuntime(11261): FATAL EXCEPTION: main 
07-22 14:50:19.260: E/AndroidRuntime(11261): java.lang.NoSuchMethodError: com.example.googlemap.MainActivity.getFragmentManager 
07-22 14:50:19.260: E/AndroidRuntime(11261): at com.example.googlemap.MainActivity.onCreate(MainActivity.java:26) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1050) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at android.os.Handler.dispatchMessage(Handler.java:99) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at android.os.Looper.loop(Looper.java:130) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at android.app.ActivityThread.main(ActivityThread.java:3691) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at java.lang.reflect.Method.invokeNative(Native Method) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at java.lang.reflect.Method.invoke(Method.java:507) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:912) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:670) 
07-22 14:50:19.260: E/AndroidRuntime(11261): at dalvik.system.NativeStart.main(Native Method) 

這是我的編碼。

MainActivity.java

public class MainActivity extends FragmentActivity { 

    private final LatLng LOCATION_BURNABY = new LatLng(49.27645, -122.917587); 
    private final LatLng LOCATION_SURREY = new LatLng(49.187500, -122.849000); 

    private GoogleMap map; 


    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap(); 
    } 

    public void onClick_City(View v){ 
     CameraUpdate update = CameraUpdateFactory.newLatLng(LOCATION_BURNABY); 
     map.animateCamera(update); 
    } 

    public void onClick_Burnaby(View v){ 

    } 

    public void onClick_Surrey(View v){ 

    } 
} 
+0

你在運行什麼SDK代碼? – nedaRM

+0

minsdk =「8」..是嗎? – Febbie

回答

1

您應該使用getSupportFragmentManager()

SupportMapFragment fm = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); 
map = fm.getMap(); 
+0

任何想法是什麼意思? [2013-07-22 16:31:47 - googlemap]未能在設備上安裝googlemap.apk'1427908188A5BBC2E5921E3A219736E':打開的文件太多 [2013-07-22 16:31:47 - googlemap] com.android .ddmlib.SyncException:打開的文件過多 [2013-07-22 16:31:47 - googlemap]啓動取消! – Febbie

+0

@Febbie嘗試在您的設備上進行測試。 – Raghunandan

+0

我試過在我的設備上,它告訴我.. 我現在重新啓動我的日食和電話。 希望沒有更多的問題 – Febbie

相關問題