gpt4 book ai didi

android - 如何在另一个类中实现 Retrofit 回调?

转载 作者:行者123 更新时间:2023-11-29 18:25:21 25 4
gpt4 key购买 nike

现在我正在我的一个 fragment 中进行改造调用

private void makeNetworkCall(Comment comment){
RetrofitInterfaces.IPostNewComment service = RetrofitClientInstance.getRetrofitInstance().create(RetrofitInterfaces.IPostNewComment.class);
Call<EventCommentsDao> call = service.listRepos(comment);
call.enqueue(new Callback<EventCommentsDao>() {
@Override
public void onResponse(Call<EventCommentsDao> call, Response<EventCommentsDao> response) {
Log.d(TAG, "onResponse: NewComment: " + response.message());

}

@Override
public void onFailure(Call<EventCommentsDao> call, Throwable t) {
Log.d(TAG, "onFailure: Failed to post new comment: " + t);
}
});

}
public interface IPostNewComment{
@POST("addcomment")
Call<EventCommentsDao> listRepos(@Body Comment comment);
}

如何在另一个类中实现回调方法,但仍然在当前类中进行网络调用

最佳答案

回调就像任何其他变量一样。您可以将其提取为参数并从另一个类传递(如果您将方法设为公共(public)/静态)

private void makeNetworkCall(Comment comment, Callback<EventCommentsDao> cb){
RetrofitInterfaces.IPostNewComment service = RetrofitClientInstance.getRetrofitInstance().create(RetrofitInterfaces.IPostNewComment.class);
Call<EventCommentsDao> call = service.listRepos(comment);
call.enqueue(cb);
}

关于android - 如何在另一个类中实现 Retrofit 回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59349163/

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