2013-12-16 3 views
-2
import java.util.ArrayList; 
import java.util.List; 
import com.google.android.gms.maps.CameraUpdateFactory; 
import com.google.android.gms.maps.GoogleMap; 
import com.google.android.gms.maps.SupportMapFragment; 
import com.google.android.gms.maps.model.LatLng; 
import com.google.android.gms.maps.model.MarkerOptions; 
import android.app.Activity; 
import android.content.Intent; 
import android.database.Cursor; 
import android.graphics.drawable.Drawable; 
import android.location.Location; 
import android.location.LocationListener; 
import android.os.Bundle; 
import android.support.v4.app.FragmentActivity; 
import android.widget.Toast; 

public class Map extends FragmentActivity { 

Cursor c; 
MyDataBase mdb; 
ArrayList<String> stop; 




GoogleMap gmaps; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.map); 
    mdb=new MyDataBase(this); 
    mdb.open(); 
    double[] latitude=new double[97]; 
    double[] longitude=new double[97]; 
    stop=new ArrayList<String>(); 
    Intent intent=getIntent(); 
    stop=intent.getStringArrayListExtra("stopslist"); 
    for(int i=0;i<stop.size();i++) 
    { 
    c=mdb.getStops(stop.get(i)); 
    while(c.moveToNext()) 
    { 
     latitude[i]=c.getDouble(2); 
     longitude[i]=c.getDouble(3); 
     //Toast.makeText(getApplicationContext(),latitude[i]+" "+longitude[i], 1).show(); 

    } 
    } 

    SupportMapFragment map = (SupportMapFragment) getSupportFragmentManager() 
      .findFragmentById(R.id.map); 
    gmaps=map.getMap(); 
    gmaps.setMyLocationEnabled(true); 
    LatLng ll=new LatLng(latitude[0], longitude[0]); 
    gmaps.moveCamera(CameraUpdateFactory.newLatLng(ll)); 
    gmaps.animateCamera(CameraUpdateFactory.zoomTo(12)); 

    for(int i=0;i<stop.size();i++) 
    { 
     ll=new LatLng(latitude[i],longitude[i]); 
     gmaps.addMarker(new MarkerOptions() 
     .title(stop.get(i)) 
     .snippet(stop.get(i)+" "+"Metro Station") 
     .position(ll)); 
    } 

} 

}Карта не показывает ничего

Edit:

Это код, который я написал, чтобы прикрепить маркеры на карте, но при нажатии на кнопку, он идет к Google Maps и остается пустым. Может кто-то сказать, в чем проблема?

+0

Вы ссылаетесь на проект библиотеки google play services в своем проекте Android? – Raghunandan

+0

да я сделал .. Но все же эти проблемы есть .. – Akshat

+0

как вы это сделали. а также проверить это https://developers.google.com/maps/documentation/android/start#getting_the_google_maps_android_api_v2, используя карту api v2? – Raghunandan

ответ

0

просто добавьте библиотеку игровых сервисов Google в свой проект.

перейти в ваш проект -> Свойства -> Android -> в проекте целевой сборки секции -> проверить Google API

+0

Его уже сделали .. – Akshat

+0

см. Мой отредактированный answe –

+0

сделал это работает ?????? –

0

Once проверить это в манифесте:

<uses-library 
     android:name="com.google.android.maps" /> 
+0

не нужно – Raghunandan

+0

Я сделал это .. Внутри приложения в манифесте .. – Akshat

+0

@ Raghunandan Почему бы и нет? –

0

скачать соответствующий android- Google-карты-api.jarhere, чтобы избежать ошибок и проверить manisfest слишком

<uses-library 
     android:name="com.google.android.maps" /> 
0

У меня есть не знаю, почему люди здесь пытаются запутать вас и заставить вас использовать API, который устарел почти год, но ответы здесь неверны.

Там нет необходимости в добавлении этой строки кода:

<uses-library android:name="com.google.android.maps" /> 

как эта строка кода относится к предыдущему API v1. API v2 настроен совсем по-другому. И на самом деле код, который вы представили, это код для API V2, так что вы на правильном пути.

Пожалуйста, обратите внимание на эти 2 сообщения в блоге, чтобы убедиться, что вы совершили все шаги правильно:

Google Maps API V2 key

и:

Google Maps API V2

А если это не поможет, воспользуйтесь файлом манифеста XML.

Смежные вопросы