【发布时间】:2015-03-28 08:53:45
【问题描述】:
我正在使用带有 androidannotations 的 @EBean MyTask 类。我想像这样创建生成类的新实例
myTask = new MyTask_(this);
它给了我错误:
错误:(65, 28) 错误: MyTask_(Context) 在 MyTask_ 中具有私有访问权限
生成的类有一个私有方法:
private MyTask_(Context context) {
context_ = context;
init_();
}
问题是,要怎么做才能让android注解可以声明构造函数public?或者我如何访问私有构造函数?
【问题讨论】:
-
您传递给构造函数的
this参数到底是什么?根据docs:“一个@EBean注释类必须只有一个构造函数。这个构造函数必须没有参数,或者从AndroidAnnotations 2.7 开始,它可能有一个Context类型的参数。” 。通常,您不会自己调用构造函数,而是让 AA 通过使用@EBean注释字段来为您创建带注释的类的实例。 -
我正在使用 AndroidAnnotations 2.7 和 this = BaseActivity.this
-
我对 AA 不太熟悉,但你不会在
BaseActivity类中用@Bean注释一个字段,以便注入一个新实例化的实例(假设你没有将MyTask范围设置为单例)?
标签: android constructor private public android-annotations