Android 如何从sqlite数据库中的数据向google地图添加纬度和经度标记

Android 如何从sqlite数据库中的数据向google地图添加纬度和经度标记,android,sqlite,google-maps,android-listview,Android,Sqlite,Google Maps,Android Listview,我在我的sqlite数据库中有诸如姓名、地址、类型、图像、lat和lng等数据。我在listview中显示名称和地址,如果单击列表,它将启动我的db_parse.java或我的新活动,并显示名称、地址、类型、图像、lat和lng。现在我想在dp_parse.java中添加按钮“在地图中查看”,以显示位置或在谷歌地图中添加标记。如何获取按钮的lat和lng值,并在“地图”活动中启动地图 这是我的数据库类: public class DB_Restoran extends SQLiteOpenHel

我在我的
sqlite数据库中有诸如姓名、地址、类型、图像、
lat
lng
等数据。我在
listview
中显示名称和地址,如果单击列表,它将启动我的db_parse.java或我的新活动,并显示名称、地址、类型、图像、
lat
lng
。现在我想在dp_parse.java中添加按钮“在地图中查看”,以显示位置或在
谷歌地图中添加标记。如何获取按钮的
lat
lng
,并在“地图”活动中启动地图

这是我的数据库类

public class DB_Restoran extends SQLiteOpenHelper {
final static String DB_NAME = "db_restoran";

public DB_Restoran(Context context) {
    super(context, DB_NAME, null, 1);
    //Todo auto
}

@Override
public void onCreate(SQLiteDatabase db) {
    String sql = "CREATE TABLE IF NOT EXISTS restoran(_id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, address TEXT, img BLOB, lat TEXT, lng TEXT)";
    db.execSQL(sql);

    ContentValues values = new ContentValues();
    values.put("_id", "1");
    values.put("name", "RM. Raya");
    values.put("address", "Jl.Endro Suratmin Sukarame");
    values.put("img", R.drawable.ic_listrestro);
    values.put("lat", "-5.384402");
    values.put("lng", "105.295443");
    db.insert("restoran", "_id", values);

    values.put("_id", "2");
    values.put("name", "RM. Saudara");
    values.put("address", "Jl.P.Tirtayasa Sukabumi");
    values.put("img", R.drawable.dua_saudara);
    values.put("lat", "-5.384402");
    values.put("lng", "105.295443");
    db.insert("restoran", "_id", values);

    values.put("_id", "3");
    values.put("name", "RM. Wito");
    values.put("address", "Jl.Arief Rahman Hakim Blok A No.16");
    values.put("img", R.drawable.mbok_wito);
    values.put("lat", "-5.384402");
    values.put("lng", "105.295443");
    db.insert("restoran", "_id", values);

    values.put("_id", "4");
    values.put("name", "Cafe");
    values.put("address", "Jl.Arief Rahman Hakim Blok A No.29");
    values.put("img", R.drawable.cafe_babe);
    values.put("lat", "-5.384402");
    values.put("lng", "105.295443");
    db.insert("restoran", "_id", values);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    db.execSQL("DROP TABLE IF EXISTS restoran");
    onCreate(db);
}
}
这是我的菜单类

公共类菜单\u Restoran扩展了ActionBarActivity{
受保护的ListView lv;
受保护的ListAdapter适配器;
sqlitedb数据库;
光标;
@抑制警告(“弃用”)
@凌驾
创建时受保护的void(Bundle SavedInstanceState){
super.onCreate(SavedInstanceState);
setContentView(R.layout.menu\u restoran);
//启用向上/后退按钮
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
db=(新的db_Restoran(this)).getWritableDatabase();
lv=(ListView)findViewById(R.id.list);
试一试{
cursor=db.rawQuery(“按名称ASC从订单中选择*”,null);
adapter=new SimpleCursorAdapter(这个,R.layout.list\u视图,光标,
新字符串[]{“名称”、“地址”、“img”},
新的int[]{R.id.item,R.id.textView1,R.id.icon});
低压设置适配器(适配器);
lv.setTextFilterEnabled(真);
lv.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
细节(位置);
}
});
}捕获(例外e){
e、 printStackTrace();
}
}
公共空白详细信息(内部位置){
int-img=0;
字符串_id=“”;
字符串名称=”;
字符串地址=”;
字符串lat=“”;
字符串lng=“”;
if(cursor.moveToFirst()){
光标。移动位置(位置);
img=cursor.getInt(cursor.getColumnIndex(“img”);
name=cursor.getString(cursor.getColumnIndex(“name”);
地址=cursor.getString(cursor.getColumnIndex(“地址”);
lat=cursor.getString(cursor.getColumnIndex(“lat”));
lng=cursor.getString(cursor.getColumnIndex(“lng”));
}
Intent iIntent=新的Intent(这是DBResto_Parse.class);
内容putExtra(“数据img”,img);
内容putExtra(“数据名”,名称);
内容putExtra(“数据地址”,地址);
内容额外(“数据lat”,lat);
内容额外(“数据液化天然气”,液化天然气);
设置结果(结果正常,内容);
startActivityForResult(内容99);
}
}
您可以使用此工具学习如何从SQLite数据库中将所需信息提取到字符串中,并使用此工具学习如何使用从数据库提取的lat/lng信息将标记放在google地图上。