Google MapView使用Kotlin实现OnMapReadyCallback

Google MapView使用Kotlin实现OnMapReadyCallback,kotlin,android-mapview,implements,Kotlin,Android Mapview,Implements,我使用一个EmptyActivity并希望在MainActivity中放置一个MapView,我想我需要在MapReadyCallback上实现,这是我的代码 package com.example.myapplication import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import com.google.android.gms.maps.OnMapReadyCallback class Ma

我使用一个EmptyActivity并希望在MainActivity中放置一个MapView,我想我需要在MapReadyCallback上实现,这是我的代码

package com.example.myapplication
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.google.android.gms.maps.OnMapReadyCallback

class MainActivity : AppCompatActivity(), OnMapReadyCallback{

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}
为什么我会得到这个 错误:类“MainActivity”不是抽象的,并且没有实现抽象成员公共抽象趣味onMapReady(p0:GoogleMap!):在com.google.android.gms.maps.OnMapReadyCallback中定义的单元。

是一个具有单个方法的接口
onMapReady
。编译器告诉您的是,当您实现一个接口时,如果您的类本身既不是接口也不是抽象的,那么您必须为接口中定义的方法声明实现。因此,您将更新您的活动,如下所示:

class MainActivity : AppCompatActivity(), OnMapReadyCallback{

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

    override fun onMapReady(map: GoogleMap) {
        // Add implementation here
    }
}
这可能会解决这个特定的问题,但听起来您可能需要仔细阅读接口及其工作方式


希望有帮助

谢谢你的解释,我是一个初学者,我真的需要。