1

我有使用 AsyncTask 实现的 Web 服务请求。通常我使用接口回调到 Activity:

public interface AsyncTaskComplete<T> {

    public void onTaskComplete(T result);
    public void onTaskFailed(T result);

}

在异步任务中:

private AsyncTaskComplete<String> callback;

public AsyncTaskAbout(AsyncTaskComplete<String> cb) {
    this.callback = cb;
}

protected void onPostExecute(String result) {
    if(result ==  null){
        callback.onTaskFailed(result);
    }else{
        callback.onTaskComplete(result);
    }

}

但是如果我想给回调 FragmentActivity 编译器建议我将 AsyncTask 构造函数更改为:

public AsyncTaskAbout(FragmentActivity faActivity) {
    this.callback = (AsyncTaskComplete<String>) faActivity;
}

警告在哪里:

Type safety: Unchecked cast from FragmentActivity to AsyncTaskComplete<String>

那么我需要改变什么?

或者在这种情况下如何进行回调?

谢谢。

4

0 回答 0