我试图从片段B中的片段A访问Textview来更改文本,我得到一个空指针。香港专业教育学院尝试过以
public void setText(String text) {
TextView t = (TextView) getView().findViewById(R.id.message_menu);
t.setText(text);
}
我也试过
test = (TextView) getView().findViewById(R.id.message_menu);
test.setText("bla bla");
我也尝试过膨胀另一种观点
View myFragmentView = inflater.inflate(R.layout.fragment_login, container, false);
test = (TextView) test..findViewById(R.id.message_menu);
尝试使用NewInstance和Fragment B中的以下代码
test = (TextView) FragmentLogin.newInstance().getView().findViewById(R.id.TEXT_STATUS_ID);
test.setText("hello testing ");
和片段A:
public static FragmentBottomMenu newInstance() {
FragmentBottomMenu fragment = new FragmentBottomMenu();
return fragment;
}
仍然获得空指针异常。
任何建议都会很棒。感谢
答案 0 :(得分:1)
您的代码示例指向当前片段的视图!要正确访问其他片段视图,请使用:
text = (TextView) [otherFragmentInstance].getView().findViewById(R.id.message_menu);
text.setText("bla bla");