java - 如何从列表中获取颜色值列表?
问题描述
我已经object2.addProperty("marker-colors", "#ffbf00");
在 json 中指定了颜色,然后检索该值。withImage(ICON_ID, createBitMap(get("marker-color")))
我将在 createBitmap(...) 中使用颜色值
这是我的代码
List<Feature> features = new ArrayList<>();
JsonObject object1 = new JsonObject();
object1.addProperty("title", "TEST1");
object1.addProperty("marker-color", "#c70024");
features.add(Feature.fromGeometry(
Point.fromLngLat(106.535033, -6.323488), object1));
JsonObject object2 = new JsonObject();
object2.addProperty("title", "TEST2");
object2.addProperty("marker-color", "#ffbf00");
features.add(Feature.fromGeometry(
Point.fromLngLat(106.897423, -6.277078), object2));
JsonObject object3 = new JsonObject();
object3.addProperty("title", "TEST3");
object3.addProperty("marker-color", "#00c753");
features.add(Feature.fromGeometry(
Point.fromLngLat(106.797217, -6.171958), object3));
然后
mapboxMap.setStyle(new Style.Builder().fromUri(CPN_STYLE)
.withSource(new GeoJsonSource(SOURCE_ID,
FeatureCollection.fromFeatures(features)))
.withImage(ICON_ID, createBitMap(get("marker-color")))
.withLayer(new SymbolLayer(LAYER_ID, SOURCE_ID)
.withProperties(
textField(get("title")),
iconImage(ICON_ID),
textSize(14f),
iconAllowOverlap(true),
iconIgnorePlacement(true),
textColor(get("marker-color")),
textJustify(TEXT_JUSTIFY_AUTO),
iconOffset(new Float[]{0f, -9f}))
), style -> {
mapboxMap.animateCamera(CameraUpdateFactory.newCameraPosition(
new CameraPosition.Builder()
.target(new LatLng(-6.323488, 106.535033))
.zoom(7)
.build()), 1000);
});
答案将非常有用。谢谢
解决方案
您可以执行以下操作而不是使用JsonObject
s
Feature singleFeature = Feature.fromGeometry(Point.fromLngLat(LONG,LAT));
singleFeature.addStringProperty("title", "TEST1");
singleFeature.addStringProperty("marker-color", "#c70024");
features.add(singleFeature);
createBitmap()
引擎盖下的方法是什么样的?
您可能想要使用 Maps SDK并密切关注https://docs.mapbox.com/android/maps/examples/missing-icon/MapView.OnStyleImageMissingListener
中所做的工作。
不要
.withImage()
在设置 SymbolLayer 时使用。它将
.iconImage(get("marker-color")),
用于您的 SymbolLayer。
推荐阅读
- python - 在历史数据中寻找相似的烛台模式
- scripting - 如何设置一个需要每两周运行一次的 cronjob .. 到周日每两周运行一次
- spring-boot - 结合 configure() + hasAuthority() 和 PreAuthorize
- windows - 如何使用 AutoHotkey 重新分配“退出”快捷方式?
- python - 当我想加载模型时失败
- python - 使用计算列表中有多少项目的函数序列化 1tomany 关系
- react-native - 滚动时消失的标题并在 react-native 中不再滚动时出现
- airflow - Airflow Composer 删除特定的 xcom 键
- python - Python中的正确答案计数器
- javascript - 错误:找不到模块'/.../...Part-3/index.js' root@123:为什么会出现此错误