我想在單擊FloatingActionButton時調用片段方法。
我正在使用Butterknife。在活動中調用片段方法會導致空指針異常
錯誤:
PID: 9956 java.lang.NullPointerException: Attempt to invoke virtual method 'void com.fischerdaniel.testapp.FirstFragment.setTvText()' on a null object reference
的MainActicity的一部分:
@OnClick({R.id.fab_one, R.id.fab_two, R.id.fab_three}) public void test(View view) {
switch (view.getId()) {
case R.id.fab_three:
FirstFragment firstFragment = (FirstFragment) getSupportFragmentManager().findFragmentById(R.id.fragment_first);
firstFragment.setTvText();
break;
default:
break;
}
}
片段的一部分:
@BindView(R.id.et_one) EditText etOne;
@BindView(R.id.et_two) EditText etTwo;
@BindView(R.id.tv_one) TextView tvOne;
@BindView(R.id.tv_two) TextView tvTwo;
private Unbinder unbinder;
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_first, container, false);
unbinder = ButterKnife.bind(this, view);
return view;
}
protected void setTvText() {
tvOne.setText(etOne.getText());
tvTwo.setText(etTwo.getText());
}
你調用它通過refrence –