相关疑难解决方法(0)

如何在标记下移动地图?

假设我们在地图上有一个居中的标记,当我们用手指移动地图时,我们可以看到当你离开该区域时,标记将不再显示.那么我们怎样才能制作一个始终位于地图中心的标记,尽管我们将地图移动到任何地方?有一个名为UBER的应用程序,它们提供此功能,您不要拖放标记,只需移动地图,标记就会保持它的位置.

这是一个截图:

优步地图标记

当我们移动地图时,您可以看到绿色标记位于屏幕的中心,它仍然保留其位置,但在用户停止移动地图时显示新位置.我们怎么能这样做?

我有一个代码,当您拖放标记时显示地址,如何重新显示地址但这次不是通过拖动,移动地图?希望你能理解任何想法都会很棒.

public class MainActivity extends AbstractMapActivity implements
    OnNavigationListener, OnInfoWindowClickListener,
    OnMarkerDragListener {
  private static final String STATE_NAV="nav";
  private static final int[] MAP_TYPE_NAMES= { R.string.normal,
    R.string.hybrid, R.string.satellite, R.string.terrain };
  private static final int[] MAP_TYPES= { GoogleMap.MAP_TYPE_NORMAL,
    GoogleMap.MAP_TYPE_HYBRID, GoogleMap.MAP_TYPE_SATELLITE,
    GoogleMap.MAP_TYPE_TERRAIN };
private GoogleMap map=null;
String filterAddress = "";
Marker marker;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    if (readyToGo()) {
        setContentView(R.layout.activity_main);

        SupportMapFragment mapFrag=
            (SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.map);

        mapFrag.setRetainInstance(true);
        initListNav();

        map=mapFrag.getMap();

        if (savedInstanceState == null) {
            CameraUpdate center=
                CameraUpdateFactory.newLatLng(new LatLng(
                        41.003739,
                        28.999572));
            CameraUpdate zoom=CameraUpdateFactory.zoomTo(10); …
Run Code Online (Sandbox Code Playgroud)

android google-maps google-maps-markers

31
推荐指数
2
解决办法
3万
查看次数

无论你在哪里捏缩放android,都要保持地图居中

我正在寻找类似Uber处理捏缩放事件的方式.无论您在屏幕上捏什么,它都会使地图居中并放大中心位置.有没有办法在地图片段上没有某种叠加的情况下做到这一点?或者我应该只禁用地图的事件,在地图片段上创建叠加层,并处理叠加层中的所有缩放/其他事件?

android location google-maps zoom

14
推荐指数
2
解决办法
5701
查看次数

如何在Uber和Lyft等地图上附上灵活的标记?

如何在Uber和Lyft等地图上附上灵活的标记?我正在使用谷歌地图v2.

基本上,我想在地图上显示标记,同时在移动地图时更改标记的位置.

编辑:

好的,我解决了我的问题.

第一步:将imageview添加到相同的布局和位置等于center.第二:获取地图中心的坐标使用以下方法

1-在我的情况下获取viewgroup(FrameLayout)地图片段所在的位置.

FrameLayout myContainer = (FrameLayout) findViewById(R.id.content_frame);
int mapHeight = myContainer.getHeight();
int mapWidth = myContainer.getWidth();
Run Code Online (Sandbox Code Playgroud)

2-使用setOnCameraChangeListener并在相机上更改获取坐标:

LatLng center = mMap.getCameraPosition().target;
Run Code Online (Sandbox Code Playgroud)

android google-maps google-maps-markers google-maps-api-2 android-maps-v2

7
推荐指数
1
解决办法
1万
查看次数

如何在标记下移动地图?安卓

我想实现地图的拖动效果.当我们拖动地图时,标记应显示当前位置或纬度和经度.它在Uber应用程序中完成,见下文:在此输入图像描述

在此标记中显示拖动地图时的当前位置.我怎么能实现这个???

ChooseFromMapActivity

    public class ChooseFromMapActivity extends AppCompatActivity implements GoogleMap.OnCameraChangeListener {

    TextView textShowAddress;
    private GoogleMap mMap;
    LatLng latLng;
    double latitude = 17.385044;
    double longitude = 78.486671;
    float zoom;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_choose_from_map);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
                .findFragmentById(R.id.map);
        mMap = mapFragment.getMap();
        mMap.setMyLocationEnabled(true);
        LatLng center = mMap.getCameraPosition().target;
        mMap.getUiSettings().setZoomControlsEnabled(true);
        mMap.getUiSettings().setRotateGesturesEnabled(true);
        mMap.getUiSettings().setScrollGesturesEnabled(true);
        latLng = new LatLng(-34, 151);

     mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));

        textShowAddress = (TextView) findViewById(R.id.textShowAddress);
        mMap.addMarker(new MarkerOptions()
                .position(latLng)
                .draggable(false)
                .title("sent location :)"))
        .setDraggable(false);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

java android drag marker android-mapview

0
推荐指数
1
解决办法
3640
查看次数