Java AndroidAnnotations不使用继承的类

Java AndroidAnnotations不使用继承的类,java,android,android-fragments,android-annotations,Java,Android,Android Fragments,Android Annotations,我有一个片段NavMenuStats,它扩展了父片段NavMenu 此父片段覆盖onCreateView方法,如下所示: @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { if (some condition) { View

我有一个片段NavMenuStats,它扩展了父片段NavMenu

此父片段覆盖onCreateView方法,如下所示:

@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

    if (some condition) {

        View view = ...

        // Do stuff and return view. Everything works well

        return view;

    } else {

        return null; // since @Nullable
    }
}
但是,当我在继承这个片段的类上使用AndroidAnnotations时(其中某些条件为false),它不会返回视图。一切都是空白的,@afterview甚至没有被调用

我还尝试了以下操作,而不是返回null:

...

} else {
    return super.onCreateView(inflater, container, savedInstanceState);
}
我知道我必须让AndroidAnnotations处理布局膨胀,如下所述:

这就是为什么我在父片段的onCreateView中返回null或super方法

我错过了什么?有什么想法吗


非常感谢。

没有您的NavMenuStats代码很难回答,但我认为您的问题就在那里

我认为您也将onCreateView方法添加到了NavMenuStats中,因此您正在阻止AndroidAnnotations为您编写它

尝试通过@EFragment注释类完全删除onCreateView方法

在这种情况下,它起作用:

主要片段

public class MainFragment extends Fragment{

    public boolean nullView = false;

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
        return nullView ? null : inflater.inflate(R.layout.fragment_main, container, false);
    }
}
十四行诗片段

@EFragment(R.layout.fragment_son)
public class SonFragment extends MainFragment {

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        super.nullView = true;
    }
}

也许你忘了添加生成的子片段,最后加上u?

谢谢你的回答。对不起,我不能在这里发布很多代码。但是没有,我在NavMenuStats中没有onCreateView。它正在使用其父类中的onCreateView。我尝试重写它并调用super方法/将其保留为空,但没有乐趣。有没有其他方法可以忽略父片段中的onCreateView?您是否也可以从父片段中删除它,或者不惜一切代价需要它?我的意思是,你们也可以注释父片段,让AndroidAnnotations也为你们工作。这可能是一个可行的解决方案吗?这是我的第一个解决方案:D,但遗憾的是,不,我不能删除它。哇。非常感谢你。如果你需要更多信息,请告诉我。我已经回答:如果你能发现你的问题,请告诉我