相关疑难解决方法(0)

dagger不能注入类型参数字段

我正在研究一个Android应用程序,我正在尝试注入一个在抽象类中参数化的字段:BaseListFragment

public abstract class BaseListFragment<E, A extends ArrayAdapter<E>, S> extends BaseFragment
{
    @Inject protected S service;
}
Run Code Online (Sandbox Code Playgroud)

但是我在编译时遇到以下错误:错误:找不到符号类S.

这是我的BaseFragment代码:

public class BaseFragment extends Fragment
{
    @Override public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        ((App) getActivity().getApplication()).inject(this);
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的服务模块:

@Module(
        complete = false,
        library = true
)
public class ServiceModule
{
    @Provides @Singleton BucketService provideBucketService(RestAdapter restAdapter)
    {
        return restAdapter.create(BucketService.class);
    }

    @Provides @Singleton ProjectService provideProjectService(RestAdapter restAdapter)
    {
        return restAdapter.create(ProjectService.class);
    }

    @Provides @Singleton ShotService provideShotService(RestAdapter restAdapter)
    {
        return restAdapter.create(ShotService.class);
    }

    @Provides @Singleton TeamService provideTeamService(RestAdapter …
Run Code Online (Sandbox Code Playgroud)

android dependency-injection dagger dagger-2

8
推荐指数
1
解决办法
3649
查看次数

标签 统计

android ×1

dagger ×1

dagger-2 ×1

dependency-injection ×1