Google Map的自定义InfoWindow不会在Android中渲染高程阴影

时间:2018-10-29 14:42:04

标签: google-maps-android-api-2

我正在使用InfoWindow呈现标记的任何信息。 在Android中,我们可以使用高程定义阴影。 但是高程定义的阴影不会为InfoWindow渲染。

infoWindow的布局是这样的

<RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/background"
        android:paddingStart="16dp"
        android:paddingEnd="16dp"
        android:paddingTop="6dp"
        android:paddingBottom="6dp"
        android:elevation="4dp"
>
    <TextView
            android:id="@+id/main_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:gravity="center_horizontal"
            android:textSize="14sp"
            android:textStyle="bold"
            tools:text="main text"
    />
    <TextView
            android:id="@+id/sub_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/main_text"
            android:layout_centerHorizontal="true"
            android:gravity="center_horizontal"
            android:textSize="11sp"
            tools:text="sub text"/>
</RelativeLayout>

形状是这样的

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="rectangle">
    <corners android:radius="500dp"/>
    <solid android:color="@color/white"/>
</shape>

代码段是这样的

googleMap?.setInfoWindowAdapter(object: GoogleMap.InfoWindowAdapter {
      override fun getInfoContents(marker: Marker?): View? {
          return null
      }

      override fun getInfoWindow(marker: Marker?): View? {
          return layoutInflater.inflate(R.layout.map_info_window, null)
      }

  })

0 个答案:

没有答案