改造覆盖方法失败

时间:2015-10-22 15:26:48

标签: java android retrofit

我是Android编程的新手,我正在尝试通过改造连接到服务器并获取一些数据。我做了一个小例子来检查它是否会返回一些数据。首先是一个问题,我不知道我是否写了代码来做我想做的事情,然后我得到错误:

"错误:(64,52)错误:不是抽象的,并且不会覆盖Callback"中的抽象方法失败(RetrofitError) 和2个错误"错误:(67,13)错误:方法不会覆盖或实现超类型的方法"

这是我的代码

 public class MainActivity extends ListActivity{
public static final String ENDPOINT = "http://tinoba.hostzi.com";
List<Jelovnik> jelovnik;
Button gumb;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    gumb = (Button)findViewById(R.id.gumb);



}

public void stisni(View view) {
    RestAdapter adapter = new RestAdapter.Builder()
            .setEndpoint(ENDPOINT)
            .build();
    JelovnikAPI api = adapter.create(JelovnikAPI.class);
    api.getFeed(new Callback<List<Jelovnik>>() {


        @Override
        public void onResponse(Response<List<Jelovnik>> response, Retrofit retrofit) {
            jelovnik = response.body();
            gumb.setText(jelovnik.get(0).getIme().toString());
        }

        @Override
        public void onFailure(Throwable throwable) {

        }
    });
}

} 和我的改造界面

public interface JelovnikAPI {
@GET("/read.php")
public void getFeed(Callback<List<Jelovnik>> response);

}

2 个答案:

答案 0 :(得分:2)

您使用的Callback版本来自Retrofit 2,您仍在使用Retrofit 1.xCallback有两种方法,failuresuccess。你的回调应该是

new Callback<List<Jelovnik>>() {


    @Override
    success(List<Jelovnik> t, Response response) {

    }

    @Override
    public void failure(RetrofitError error) {

    }
});

答案 1 :(得分:0)

Throwable替换为RetrofitError

@Override
public void onFailure(RetrofitError retrofitError) {

}