80,362
社区成员
发帖
与我相关
我的任务
分享
package com.example.baidu_text;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.baidu.lbsapi.BMapManager;
import com.baidu.location.BDLocation;
import com.baidu.location.BDLocationListener;
import com.baidu.location.LocationClient;
import com.baidu.location.LocationClientOption;
import com.baidu.location.LocationClientOption.LocationMode;
import com.baidu.mapapi.SDKInitializer;
import com.baidu.mapapi.map.BaiduMap;
import com.baidu.mapapi.map.BitmapDescriptor;
import com.baidu.mapapi.map.BitmapDescriptorFactory;
import com.baidu.mapapi.map.DotOptions;
import com.baidu.mapapi.map.MapStatusUpdate;
import com.baidu.mapapi.map.MapStatusUpdateFactory;
import com.baidu.mapapi.map.MapView;
import com.baidu.mapapi.map.MyLocationConfiguration;
import com.baidu.mapapi.map.MyLocationData;
import com.baidu.mapapi.map.TextOptions;
import com.baidu.mapapi.model.LatLng;
import com.baidu.nplatform.comapi.map.MapController;
public class MainActivity extends Activity {
MapView mMapView = null;
BaiduMap mBaiduMap;
String mm;
Button button;
double latitude;
double longitude;
BaiduMap bdMap;
private BMapManager mBMapManager;
BitmapDescriptor mCurrentMarker;
private MapController mMapController = null;
BDLocation location;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SDKInitializer.initialize(getApplicationContext());
setContentView(R.layout.activity_main);
mMapView = (MapView)findViewById(R.id.bmapView);
bdMap = mMapView.getMap();
LocationClient locationClient = new LocationClient(getApplicationContext());
LocationClientOption locOption = new LocationClientOption();
locOption.setLocationMode(LocationMode.Hight_Accuracy);
locOption.setCoorType("bd0911");
locOption.setScanSpan(5000);
locOption.setIsNeedAddress(true);
locOption.setNeedDeviceDirect(true);
locationClient.setLocOption(locOption);
locationClient.registerLocationListener(new MyLocationListener());
locationClient.start();
button = (Button)findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
LatLng ll = new LatLng(latitude, longitude);
MapStatusUpdate msu = MapStatusUpdateFactory.newLatLng(ll);
bdMap.animateMapStatus(msu);
Toast.makeText(MainActivity.this, mm, Toast.LENGTH_LONG).show();
TextOptions textOptions = new TextOptions();
textOptions.bgColor(0xFFFF00)
.fontSize(10)
.fontColor(0xFFFF00FF)
.text("当前位置")
.rotate(-30)
.position(ll);
bdMap.addOverlay(textOptions);
String mm =latitude+"";
String nn =longitude+"";
Toast.makeText(MainActivity.this, mm+"__"+nn, Toast.LENGTH_LONG).show();
}
});
}
class MyLocationListener implements BDLocationListener{
@Override
public void onReceiveLocation(BDLocation arg0) {
mm = arg0.getCity();
latitude = arg0.getLatitude();
longitude = arg0.getLongitude();
location = arg0;
}
}
@Override
protected void onDestroy() {
super.onDestroy();
mMapView.onDestroy();
}
@Override
protected void onResume() {
super.onResume();
mMapView.onResume();
}
@Override
protected void onPause() {
super.onPause();
mMapView.onPause();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}