일부 Pojo 모델을 만들었으며 api에서 내 안드로이드 앱에 데이터를 가져오고 있습니다. 버튼 클릭시 데이터를 다운로드해야합니다.개장은 오류를 발생합니다.
public class DownloadMain extends Fragment implements Callback<Partner> {
private static final String TAG = DownloadMain.class.getSimpleName();
private Button dloadPartners;
private Call callPartners;
public DownloadMain() {}
public DownloadMain newInstance() { return new DownloadMain(); }
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.download_main, container, false);
dloadPartners = (Button) view.findViewById(R.id.downloadPartners);
dloadPartners.setOnClickListener(btnListener);
callPartners = APIHelper.getApiService().getPartners();
return view;
}
Button.OnClickListener btnListener = (new Button.OnClickListener() {
@Override
public void onClick(View v) {
callPartners.enqueue(DownloadMain.this);
}
});
@Override
public void onResponse(Call call, Response response) {
if(response.body() == null) {
try {
response.errorBody().string();
} catch (IOException e) {
e.printStackTrace();
}
Toast.makeText(getActivity(), "No Partners!", Toast.LENGTH_SHORT).show();
} else {
List<Partner> partners = (List<Partner>) response.body();
Log.d(TAG, "Number of partners received: " + partners.size());
}
}
@Override
public void onFailure(Call call, Throwable t) {
}
}
그래서 문제가 여기에 있습니다 : 여기
내가이 만든 방법이다. 내가 버튼을 클릭하면 알림 (토스트)이 "파트너 없음!"이라고 표시됩니다. 그리고 다시 클릭하면 그것은 나에게 오류 발생 : 개조가 데이터를 받고되지 않는 이유 나는 그것을 밖으로 알아낼 수 없습니다
callPartners.enqueue(DownloadMain.this);
: 버튼의 onclick 방법이 라인에서
IllegalStateException: Already executed. at retrofit2.OkHttpCall.enqueue(OkHttpCall.java:78)
합니다.
질문 :이 문제를 해결하는 데 도움을 줄 수 있습니까?
해야한다. 아직도 API에서 파트너를 얻을 수 없습니다. – RubyDigger19