java - 我可以用一个 View 来替换mapbox android 中的图标吗?

标签 java android google-maps mapbox mapbox-android

在mapbox中添加标记时,可以向标记添加自定义图标。我想知道我们是否可以膨胀 View (R.layout 文件)而不是分配可绘制图标。

这是代码:-

 public void onMapReady(MapboxMap mapboxMap) {
                IconFactory iconFactory=IconFactory.getInstance(context);
                for(int i=0;i<coordinates.size();i++){
                    mapboxMap.addMarker(new MarkerOptions()
                    .position(new LatLng(lat,longt))
                    .icon(iconFactory.fromResource(R.drawable.ic_location_green))
                          //can we inflate a view here instead of assigning a drawable image?
                }

            }

最佳答案

我认为这不可能

您可以做的是在运行时绘制自定义图标:

  1. 画在Canvas

  2. 生成Drawable在运行时(您可以创建一个对象,而不是创建 xml。因此,如果您要输入 <shape> ,则可以在 Java 中将其替换为 new Shape();)

  3. 生成 View 并复制其位图( How to convert Views to bitmaps? )此选项仅提供它的外观 - 像点击监听器之类的东西将不起作用,因此我看不出原因选择此选项

关于java - 我可以用一个 View 来替换mapbox android 中的图标吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47096310/

相关文章:

java - Hibernate Session 刷新行为 [和 Spring @Transactional]

android - 当 anyDensity ="false"时,菜单列表超出屏幕

java - Google map 和 MapFragment 以及 getMapAsync

forms - 您如何单击 map 并填充表单中的纬度和经度字段?

android - 我可以而且应该在 Activity 中使用两个 fragment

java - 我应该使用哪种布局来实现两列 20% 和 80%(Java)?

Java套接字接受队列长度

android - 从 apk 文件中提取 Keystore 文件

c# - 如何修复2019版中的Unity编译器错误?

java - 将对象添加到 Apache 公共(public)池中的 KeyedObjectPool<K,V>