从活动Android调用片段方法

时间:2017-08-03 16:20:12

标签: java android android-fragments

我知道这个问题已经讨论了很多次,但没有解决方案适合我。我有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但是它没有用。

2 个答案:

答案 0 :(得分:0)

尝试使用R.id.fragment_container代替R.id.new_fragment来获取片段。

答案 1 :(得分:0)

您的片段应附加到活动以显示文本。正确的方法是使用Fragment#setArguments(Bundle)的参数将要显示的文本传递给片段,然后使用Fragment#getArguments()将其放入片段中。