1.setInfoWindowAdapter() Verwenden Sie GoogleMap.setInfoWindowAdapter (), um ein Objekt festzulegen, das die InfoWindowAdapter-Schnittstelle implementiert (implementieren Sie getInfoWindow () oder getContents ()).
public class MapsActivity extends AppCompatActivity implements OnMapReadyCallback {
private GoogleMap mMap;
//~ Abkürzung ~
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
mMap.setInfoWindowAdapter(new GoogleMap.InfoWindowAdapter() {
@Override
public View getInfoWindow(Marker marker) {
return null; //Beschreiben Sie den Vorgang in beiden Fällen
}
@Override
public View getInfoContents(Marker marker) {
return null; //Beschreiben Sie den Vorgang in beiden Fällen
}
Erstellen Sie eine neue Layout-Ressourcendatei in res / layout / und beschreiben Sie das Layout von infoWindow. Fügen Sie nach Bedarf eine Beschreibung in res / values / strings.xml hinzu.
info_window_ayout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/tv_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/iw_1"/>
<TextView
android:id="@+id/tv_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/iw_2"/>
<TextView
android:id="@+id/tv_3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/iw_3"/>
<Button
android:id="@+id/bt_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/bt_1"/>
</LinearLayout>
strings.xml
<resources>
<!--~ Abkürzung ~-->
<string name="iw_1">Informationen in der ersten Zeile</string>
<string name="iw_2">Informationen in der zweiten Zeile</string>
<string name="iw_3">Informationen in der dritten Zeile</string>
<string name="bt_1">Sie können auch einen Knopf setzen</string>
</resources>
@Override
public View getInfoContents(Marker marker) {
View view = getLayoutInflater().inflate(R.layout.info_window_layout,null);
return view;
}
[InfoWindow anpassen](https://seesaawiki.jp/w/moonlight_aska/d/%A5%A4%A5%F3%A5%D5%A5%A9%A5%A6%A5%A3%A5%F3 % A5% C9% A5% A6% A4% F2% A5% AB% A5% B9% A5% BF% A5% DE% A5% A4% A5% BA% A4% B9% A4% EB) [Info Windows | Maps SDK for Android | Google Developers] (https://developers.google.com/maps/documentation/android-sdk/infowindows#custom_info_windows)
Recommended Posts