我有一个活动有两个片段,片段A和片段B.我想在用户触摸片段B中的按钮时显示隐藏在片段A中的视图。我该怎么做?我试图获取活动的整个布局并获取视图,但我得到一个空指针异常。
我的活动布局如下所示 这是我正在使用的线。它抛出一个空指针异常。
shadowLine = getActivity().findViewById(R.id.shadowLine);
shadowLine.setVisibility(View.VISIBLE);
答案 0 :(得分:2)
最简单的方法,而不是最安全的方式: 您可以通过
访问片段B中的托管活动HostActivity activity =(HostActivity) getActivity();
activity.callOtherFragment();
在该活动中,您可以通过
访问片段A.public void callOtherFragment() {
YourFragment A = (YourFragment)getFragmentManager().findFragmentById(R.id.fragmentA);
A.showSomeStuff();
}
然后在片段A中实现你的方法:
public void showSomeStuff() {
shadowLine.setVisibility(View.VISIBLE);
}