如何实现多个类型asynctaskloader

时间:2013-03-21 14:48:14

标签: android asynctaskloader

我想在一个asynctaskloader中使用两种类型FragmentActivity

class MyLoader1 extends AsyncTaskLoader<String>{}
class MyLoader2 extends AsyncTaskLoader<Integer>{}

我写如下。但它编译错误。

public class MyActivity extends FragmentActivity 
               implements LoaderCallbacks<String>, LoaderCallbacks<Integer>{}

请用简单的示例代码给我答案。


非常感谢。

1 个答案:

答案 0 :(得分:1)

正如hjpotter92所提到的,这就是Java处理泛型的方式。在这种情况下,我建议使用hjpotter92链接中指示的匿名类。

public class MyActivity extends FragmentActivity {
     private LoaderCallbacks<String> mLoaderCallbackString = new LoaderCallbacks<String>() {
           ...
     };

     private LoaderCallbacks<Integer> mLoaderCallbackInteger = new LoaderCallbacks<Integer>() {
           ...
     };
}

然后对于每个加载器,只需传递正确的LoaderCallbacks对象