私の質問は簡単です。 Googleマップにナイトモードはありますか?これまでのところ、適用できるのはGoogleMap.MAP_TYPE_NORMAL
| GoogleMap.MAP_TYPE_TERRAIN
| GoogleMap.MAP_TYPE_SATELLITE
が見つかりませんでした夜間モード。私はこのようなものが欲しい
オーバーレイの使用を提案しないでください。すでに試したことがあります。マーカーを付けないといけないので使えません。
this の投稿に出くわしましたが、それは2年前のものであり、多少の改善があるはずです。
簡単な方法は、rawフォルダーを作成してrawフォルダーを右クリックし、その新しい選択ファイルで新規を選択して、ファイル名を入力します。例:map_in_night異なる形式が表示されたら、[ok]をクリックします。jsonを選択して[ok]をクリックするだけで混乱しません。 jsonファイルはコードの下に追加するだけです
[
{
"featureType": "all",
"elementType": "geometry",
"stylers": [
{
"color": "#242f3e"
}
]
},
{
"featureType": "all",
"elementType": "labels.text.stroke",
"stylers": [
{
"lightness": -80
}
]
},
{
"featureType": "administrative",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#746855"
}
]
},
{
"featureType": "administrative.locality",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#d59563"
}
]
},
{
"featureType": "poi",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#d59563"
}
]
},
{
"featureType": "poi.park",
"elementType": "geometry",
"stylers": [
{
"color": "#263c3f"
}
]
},
{
"featureType": "poi.park",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#6b9a76"
}
]
},
{
"featureType": "road",
"elementType": "geometry.fill",
"stylers": [
{
"color": "#2b3544"
}
]
},
{
"featureType": "road",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#9ca5b3"
}
]
},
{
"featureType": "road.arterial",
"elementType": "geometry.fill",
"stylers": [
{
"color": "#38414e"
}
]
},
{
"featureType": "road.arterial",
"elementType": "geometry.stroke",
"stylers": [
{
"color": "#212a37"
}
]
},
{
"featureType": "road.highway",
"elementType": "geometry.fill",
"stylers": [
{
"color": "#746855"
}
]
},
{
"featureType": "road.highway",
"elementType": "geometry.stroke",
"stylers": [
{
"color": "#1f2835"
}
]
},
{
"featureType": "road.highway",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#f3d19c"
}
]
},
{
"featureType": "road.local",
"elementType": "geometry.fill",
"stylers": [
{
"color": "#38414e"
}
]
},
{
"featureType": "road.local",
"elementType": "geometry.stroke",
"stylers": [
{
"color": "#212a37"
}
]
},
{
"featureType": "transit",
"elementType": "geometry",
"stylers": [
{
"color": "#2f3948"
}
]
},
{
"featureType": "transit.station",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#d59563"
}
]
},
{
"featureType": "water",
"elementType": "geometry",
"stylers": [
{
"color": "#17263c"
}
]
},
{
"featureType": "water",
"elementType": "labels.text.fill",
"stylers": [
{
"color": "#515c6d"
}
]
},
{
"featureType": "water",
"elementType": "labels.text.stroke",
"stylers": [
{
"lightness": -20
}
]
}
]
onMapReadyに追加するだけです
mMap = googleMap;
mMap.setMapStyle(MapStyleOptions.loadRawResourceStyle(this, R.raw.mapstyle_night));
それでおしまい
に行く :
https://mapstyle.withgoogle.com
必要なものを作成し、jsonをコピーして.jsonファイルに保存します。res/rawに入れてから、次を使用します:
mMap.setMapStyle(MapStyleOptions.loadRawResourceStyle(this, R.raw.name));
上記の関数を:onMapReadyコールバックで呼び出す必要があります。