我知道这个问题已经讨论了很多次,但是没有解决方案适合我。我有一个连接有activity
的fragment
,并且使用interface
我正在从我的activity
调用一种方法,该方法将这个fragment
替换为另一个。我还希望该方法从我的新“片段”中调用一个方法,但是我实现了达到这一点时应用程序崩溃。有人知道解决方案吗?我是Android开发的新手。
public void replacingMethod(String text){
NewFragment newFragment = new NewFragment();
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, newFragment).addToBackStack(null).commit();
NewFragment f = (NewFragment) getSupportFragmentManager().findFragmentById(R.id.new_fragment);
f.displayText(text);
}
我尝试在替换前后从
displayText()
调用newFragment
,但是它不起作用。 最佳答案
您的片段应附加到活动中以显示文本。正确的方法是使用Fragment#setArguments(Bundle)
将要显示的文本传递给片段,然后使用Fragment#getArguments()
将其显示在片段内。