Google Maps损坏的地图更改监听器将不会继承或实现

时间:2018-06-28 01:03:22

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

我不知道这是怎么回事。我似乎无济于事。基本上,我会得到三个错误,都来自同一奇怪的情况。我的活动不会从Google地图实现地图更改侦听器。

对于代码的第一部分

public class BarreChat extends AppCompatActivity implements
    OnCameraMoveStartedListener,
    OnCameraMoveListener,
    OnCameraMoveCanceledListener,
    OnCameraIdleListener,
    OnMapReadyCallback {

所有的听众都用红色的下划线标出, Class BarreChat must either be declared abstract or implement abstract method onCameraMoveCanceled() in onCameraMovedCanceledListener

执行此操作的不只是在CameraMoveCanceled上。除OnCameraIdle和OnMapReadyCallback之外,其他所有侦听器均不起作用。

所以...我在活动类BarreChat中实现了该方法。

@Override
public void OnCameraMoveCanceled() {
    callCloudLogic();
}

并在onMapReady()下设置侦听器         miniMap.setOnCameraMoveCanceledListener(this);

但是在这里,@Override用红色下划线标出错误消息 Method does not inherit from its superclass. 但是那怎么可能呢?根据Googlemap自己的地图侦听器文档,这是正确的方法。

所以我什至尝试了...

    miniMap.setOnCameraMoveStartedListener(new GoogleMap.OnCameraMoveStartedListener(){
        @Override
        void OnCameraMoveStarted(int i) {
            callCloudLogic();
        }

        });

但是,与此同时,我在Android Studio中又收到了几行红线错误消息。第一个是GoogleMap.setOnCameraMoveStartedListener()读取

Class 'Anonymous class derived from OnCameraMoveStartedListener()' must either be declared abstract or implement abstract method 'OnCameraMoveStarted(int) in OnCameraMoveStartedListener()

令人沮丧,因为它在下面声明。但是... @Override包含的信息与BarreChat类中的信息相同。

Method does not override from its superclass.

有人可以告诉我这里发生了什么以及如何解决?我以为我已经适当地重写了这些方法来实现此onclick功能,但显然还没有,因为它仍然坏了。

现在,文档在fragment class的扩展中使用了它们。我不确定这是否会做任何事情...我在主要活动下使用Google Map作为视图,而不是片段。所以也许那里有东西...

0 个答案:

没有答案