我正在尝试使用Navigation components,但出现以下错误:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.menus/com.example.menus.NavHostFragment}: java.lang.RuntimeException: com.example.menus.NavHostFragment@af68459 must implement OnFragmentInteractionListener
如您所见,我缺少OnFragmentInteractionListener
,并且在该片段的顶部写道:
/ ** *一个简单的{@link Fragment}子类。 *包含此片段的活动必须实现 * {@link RestaurantLogin.OnFragmentInteractionListener}界面 *处理交互事件。 *使用{@link RestaurantLogin#newInstance}工厂方法来 *创建此片段的一个实例。 * /
如何实现@link RestaurantLogin.OnFragmentInteractionListener
或implement OnFragmentInteractionListener
。
我正在使用Java(不是Kotlin)。
答案 0 :(得分:1)
我发现,如果您删除以下行,则片段中的应用程序将停止崩溃。
@Override
public void onAttach(Context context) {
super.onAttach(context);
if (context instanceof OnFragmentInteractionListener) {
mListener = (OnFragmentInteractionListener) context;
} else {
throw new RuntimeException(context.toString()
+ " must implement OnFragmentInteractionListener");
}
}
更改为
@Override
public void onAttach(Context context) {
super.onAttach(context);
}
不确定是否可以,但是否可以正常工作。