谷歌Android地图API V2显示标记名称始终(Google android maps api

2019-07-18 21:44发布

我在我的Android应用程序谷歌地图V2和它的一些标记。 当用户点击其中一个标志,标题弹​​出来。 我怎么能总是显示无用户点击这些标题?

Answer 1:

只需拨打Marker.showInfoWindow(); 。 见https://developers.google.com/maps/documentation/android/marker#info_windows和https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/model /标记#showInfoWindow()



Answer 2:

类似的东西:

googleMap.addMarker(new MarkerOptions()
    .position(new LatLng(latitude, longitude))
    .title("Your position")).showInfoWindow();


Answer 3:

你可以这样做:

Marker marker = mMap.addMarker(new MarkerOptions().position(currentPosition).title("Your text"));
marker.showInfoWindow();


Answer 4:

对于周围的标记在地图上显示标记的标题,没有一个解决方案,我发现在互联网上为我工作,所以我卷起了袖子,做出这个库解决了这个问题对我来说,希望这将帮助其他人太:

https://github.com/androidseb/android-google-maps-floating-marker-titles

这里是它如何工作的预览:



Answer 5:

我不是在一些实现好,但这里是我的代码:

public BitmapDescriptor getBitmapFromView(String title) {
        View view = LayoutInflater.from(activity.getApplicationContext()).inflate(R.layout.marker_tooltip, null);
        ((TextView) view.findViewById(R.id.tooltips_title)).setText(title);

        //Get the dimensions of the view. In my case they are in a dimen file
        int width = activity.getResources().getDimensionPixelSize(R.dimen.tooltips_width);
        int height = activity.getResources().getDimensionPixelSize(R.dimen.tooltips_height);

        int measuredWidth = View.MeasureSpec.makeMeasureSpec(width, View.MeasureSpec.EXACTLY);
        int measuredHeight = View.MeasureSpec.makeMeasureSpec(height, View.MeasureSpec.EXACTLY);

        view.measure(measuredWidth, measuredHeight);
        view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight());

        Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
        Canvas canvas = new Canvas(bitmap);

        view.draw(canvas);

        return BitmapDescriptorFactory.fromBitmap(bitmap);
    }

...
marker.setIcon(getBitmapFromView(marker.getTitle()));
...

我有一些不同的地图应用程序中实现这一个片段。 例如,一个自定义信息窗口,并在地图上的一些事件,但它的实现是需要显示在同一时间的所有标记称号。 让我知道这是否对你是有帮助太

“activity.getResources()。getDimensionPixelSize(R.dimen.tooltips_width)”的活性的变量是在片段的属性



Answer 6:

也许我是有点晚在回答这个问题之一,但下面的代码为我工作:

//添加此库

implementation 'com.google.maps.android:android-maps-utils:0.5'

//然后使用下面的方法

public void makersMaker(GoogleMap googleMap){
    IconGenerator iconFactory = new IconGenerator(this);                            
    Marker marker1 = googleMap.addMarker(new MarkerOptions().position(newLatLng(-1.3177336,36.8251902));                  
    marker1.setIcon(BitmapDescriptorFactory.fromBitmap(iconFactory.makeIcon("Marker 1")));
    Marker marker2 = googleMap.addMarker(new MarkerOptions().position(new LatLng(-1.2857399,36.8214088)));                
    marker2.setIcon(BitmapDescriptorFactory.fromBitmap(iconFactory.makeIcon("Marker 2")));
}


文章来源: Google android maps api v2 Show Marker Title Always