0
我試圖標記添加到我的地圖,座標和名稱都包含在我通過查詢到stackmob數據庫中獲取正在停止對象,程序運行正常顯示地圖上,但由於某些原因,它看起來像它不執行addmarker指令,不會通過循環,甚至在addMarkers方法。此外,我沒有在控制檯或LogCat中收到任何錯誤或消息,我正在用盡想法來解決這個問題。標記沒有顯示在stackmob查詢後,地圖
public class MainActivity extends Activity {
GoogleMap map;
List<Stop> stops=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
StackMobAndroid.init(getApplicationContext(), 0, "f4e013f5-3e0f-41e2-af2f-3fc2bfa2446b");
getMarkers();
}
public void getMarkers()
{
Stop.query(Stop.class, new StackMobQuery().field(new StackMobQueryField("stop")), new StackMobQueryCallback<Stop>() {
@Override
public void success(List<Stop> result) {
addMarkers(result);
}
@Override
public void failure(StackMobException e) {
System.out.println("Fail");
}
});
}
public void addMarkers(List<Stop> stops)
{
for(int i=0;i<=stops.size();i++)
{
LatLng markerPos = new LatLng(stops.get(i).getLatitude(), stops.get(i).getLongitude());
System.out.println(markerPos);
System.out.println(stops.get(i).getName());
System.out.println(i);
map.addMarker(new MarkerOptions().title(stops.get(i).getName()).snippet("test").position(markerPos));
}
}
由於
編輯:如果我在手動添加一個標記,可以說該onCreate方法,它將正確地顯示在地圖上。
EDIT2:當我把一個try catch語句圍繞map.addmarker錯誤信息讀取「不是在主線程」不知道這一點。