如何使 AndroidAnnotations 生成的 class 在其构造函数中接受 WeakReference<Activity> 而不是 Activity

How to make AndroidAnnotations-generated class accept a WeakReference<Activity> instead of Activity in its constructor

我有一个 @EBean(通过 AndroidAnnotations)注释 class 扩展 BaseAdapter。我没有提供任何构造函数,但是生成的 class 创建了一个构造函数,它接受 Activity 作为它的参数。

后台任务加载内容,如果它在 activity 被终止之前尚未完成,它会泄漏 Activity 上下文。通常,当我处于控制状态时,我将 WeakReference<Activity> 传递给此类后台任务,并且不再出现问题,但是在这里我无法控制生成的构造函数接受什么作为其参数,我可以吗?

有办法解决这个问题吗?

片段使用此适配器,片段的生成版本实例化适配器的方式如下:

adapter = MyAdapter_.getInstance_(getActivity());

这些生成的方法不是设计给程序员使用的,它们实际上是AA的实现细节。当然你可以调用他们,但你将无法实现OP中的问题。