2013-12-23 39 views
0

編輯:創建標記並將其添加到地圖。該方法在地圖被調用後調用。無法通過supportMapFragment操作GoogleMap

public void testDisplay(){ 
    // latitude and longitude 
    double latitude = 0; 
    double longitude = 0; 

    // create marker 
    MarkerOptions marker = new MarkerOptions().position(new LatLng(latitude, longitude)).title("Hello Maps ").icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_MAGENTA)); 

    // adding marker 
    map.addMarker(marker); 
} 

我正在開發一個提供行程的Java android應用程序。我實施了谷歌地圖。但我似乎無法操縱地圖(添加標記,左右移動,添加位置的用戶等)

這裏是我的進口(也許我導入相同類型的不同的庫):

import android.content.Context; 


import android.os.Bundle; 

import android.util.Log; 

import android.view.Menu; 
import android.view.View; 
import android.widget.LinearLayout; 
import android.widget.TextView; 

import com.codexmalta.mytravelbuddy.R; 
import com.google.android.gms.location.LocationListener; 
import com.google.android.gms.maps.CameraUpdateFactory; 
import com.google.android.gms.maps.GoogleMap; 

import android.support.v4.app.FragmentActivity; 
import com.google.android.gms.maps.SupportMapFragment; 

import com.google.android.gms.maps.model.CameraPosition; 
import com.google.android.gms.maps.model.LatLng; 
import com.google.android.gms.maps.model.Marker; 
import com.google.android.gms.maps.model.MarkerOptions; 

這裏是我的方法包含線拿到地圖,我從的onCreate()調用它:

SupportMapFragment fm = new SupportMapFragment(); 

public void getMapFragment(){ 
     fm = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); 
     map = fm.getMap(); 
     Log.e("getmapfragment0", "got map fragment"); 
     map.setMyLocationEnabled(true); 
     map.setMapType(map.MAP_TYPE_SATELLITE); 
    } 

我也查地圖NULL,它讓我發現,地圖不爲空。

地圖甚至沒有更改爲衛星。獲取當前位置的按鈕不顯示。我能做些什麼來解決這個問題?我迷路了,我需要在1月份提交這個應用程序。

+1

加入

Marker mapPinPoint = mMap.addMarker(new MarkerOptions().position(new LatLng(latitude,longitude)).icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_RED))); 

電話testDisplay()initialize the map後,你有沒有下載谷歌播放服務升庫中的SDK?或發佈您的logcat快速sloution –

+0

,而不是** map.MAP_TYPE_SATELLITE **使用** GoogleMap.MAP_TYPE_SATELLITE ** – kId

+0

@kaushik是的我後來意識到這個錯誤,修復它,但仍然沒有奏效。而且我無法真正獲得LogCat,因爲我正在使用移動設備進行測試。也許我可以將整個項目發送給您,並且您更改爲調試密鑰並自行測試它? – Trifecta

回答

0

試試這個

活動必須FragmentActivity

SupportMapFragment fm = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); 
GoogleMap mMap = fm.getMap(); 

對於來自onCreate

+0

我做到了。它使我的地圖更新到衛星視圖或其它任何東西。但我仍然無法通過添加標記或動畫來操作地圖。 – Trifecta

+0

我用代碼更新了問題以添加標記。 – Trifecta

+0

我已將我的答案檢查更新爲 – kId