Java 碎片抛出空指针
因此,我在操作Java 碎片抛出空指针,java,android,android-fragments,nullpointerexception,Java,Android,Android Fragments,Nullpointerexception,因此,我在操作文本视图内部片段时遇到问题。 我有一个简单的回调接口,只定义了onCallBackReceived(),当我的方法onCallBackReceived()被回调时,我想更改TextView的文本,但是方法setText(“onCallback”)抛出NullPointerException。异常表示该方法是在null对象引用上调用的,但我首先使用findViewById()初始化了它。请帮忙 public class MyFragment extends Fragment impl
文本视图内部片段时遇到问题。
我有一个简单的回调接口,只定义了onCallBackReceived()
,当我的方法onCallBackReceived()
被回调时,我想更改TextView
的文本,但是方法setText(“onCallback”)
抛出NullPointerException
。异常表示该方法是在null对象引用上调用的,但我首先使用findViewById()
初始化了它。请帮忙
public class MyFragment extends Fragment implements MySimpleCallback {
TextView textView;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.panel_fragment, container, false);
}
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
textView = (TextView) view.findViewById(R.id.text_view);
textView.setText("Okay!");
}
@Override
public void onCallbackReceived() {
textView.setText("onCallback");
}
}也许您可以在onCreateView中找到ViewById
public class MyFragment extends Fragment implements MySimpleCallback {
TextView textView;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.panel_fragment, container, false);
textView = (TextView) view.findViewById(R.id.text_view);
return view;
}
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
textView.setText("Okay!");
}
@Override
public void onCallbackReceived() {
textView.setText("onCallback");
}
}
您能描述一下如何调用onCallbackReceived()
method吗?MySimpleCallback MySimpleCallback代码>然后在创建时输入myimplecallback=newmyfargment()代码>并通过public void call(MySimpleCallback MySimpleCallback){mySimleCallback.onCallbackReceived();}
调用textView.setText(“好”)是否正常工作?是的,这令人惊讶;你能添加整个代码吗,比如你在哪里实例化你的片段,活动等等?还是一样的问题;(