我尝试更改活动附加textview
下的fragment
,因此我将attachedFragment
存储为变量,如下面的代码
@Override
public void onAttachFragment(android.support.v4.app.Fragment fragment) {
super.onAttachFragment(fragment);
attachedFragment = fragment;
}
然后当点击一个按钮时,我会调用以下代码
if(attachedFragment != null && attachedFragment.getView() != null)
{
TextView tvGender = (TextView) attachedFragment.getView().findViewById(R.id.tv_gender);
if(tvGender!=null)
tvGender.setText(R.string.title_step_one_gender);
}
当我开始活动并且它工作正常,直到我换成下一个片段然后按下; attachedFragment.getView()
始终返回null
我的问题:
nb:上面的所有代码都在主要活动
之下答案 0 :(得分:1)
如果我误解了你的问题,请纠正我。这听起来像你的情况,你附加片段A,然后你附加片段B,然后你按回来,留下你的片段A.在这种情况下,attachmentFragment只是一个变量,所以它继续指向B,但从B现在是分离的,它是null。按下后面不会重新填充带有片段A的变量attachedFragment。
尝试使用findFragmentById或findFragmentByTag。有关详细信息,请查看此thread。