gpt4 book ai didi

java - 安卓 : Google API inside a custom adapter

转载 作者:行者123 更新时间:2023-12-01 09:20:52 25 4
gpt4 key购买 nike

我正在使用一个名为 CustomQuestionAdapter 的自定义适配器,在 ListView 中显示问题列表,因为我们知道该适配器从 ArrayAdapter 扩展,然后我需要有关我在适配器内的位置的信息,因此我实现了所需的接口(interface)( GoogleApiClient.ConnectionCallbacks、GoogleApiClient.OnConnectionFailedListener )并实现了它的方法,但是它在重写方法 onStart() 和 onStop() 中向我显示一条错误,指出“方法不会覆盖其父类(super class)中的方法”,但是当我尝试从 AppCompatActivity 扩展时而不是 ArrayAdapter 错误消失了。

这是我类(class)的签名:

public class CustomQuestionAdapter extends ArrayAdapter<Question> implements
GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener

此处出现错误“方法不会覆盖其父类(super class)中的方法”

@Override
protected void onStart() {
super.onStart();
mGoogleApiClient.connect();
}

@Override
protected void onStop() {
super.onStop();
if (mGoogleApiClient.isConnected()) {
mGoogleApiClient.disconnect();
}
}

那么如何正确解决这个问题呢?

最佳答案

要实现 GoogleApiClient.ConnectionCallbacks 和 GoogleApiClient.OnConnectionFailedListener,您必须重写这些方法

@Override
public void onConnected(@Nullable Bundle bundle) {

Log.d("isj","connected");
}

@Override
public void onConnectionSuspended(int i) {

Log.d("isj","connection susspended");
}

@Override
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {

Log.d("isj","connection failed");
}

编辑:onStart() 和 onStop() 方法不属于 arrayAdapter 类。在适配器的构造函数中连接 google api 客户端,或者您可以创建两个方法来连接和断开 googleApiClient 并从您设置适配器的 Activity 中调用它们。从 Activity 的适配器构造函数中传递所需的值始终是一个更好的主意

关于java - 安卓 : Google API inside a custom adapter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40172756/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com