从活动中调用片段事件

Sha*_*aun 8 android android-fragments

所以,我把我的片段中的事件传递给了活动,所以如何让它成为轮流中的活动,通知片段B做某事.我想片段B在片段A点击列表项时填充自定义列表.因此,它将事件发送到活动,现在如何让活动调用片段B中的事件?

run*_*r49 32

一种方法是在你的活动中这样做:

FragmentB fragmentB = (FragmentB)getFragmentManager().findFragmentById(R.id.fragmentBId);
fragmentB.performSomeTask();
Run Code Online (Sandbox Code Playgroud)

这当然假设您在FragmentB中有一个名为performSomeTask()的公共可访问方法;

希望有所帮助!

  • 如果你在onCreate活动方法中调用performSomeTask方法,并假设你在其上填充一些edittext字段.如果您正在片段的onActivityCreate方法中初始化edittext,则会出现空指针异常.什么是最好的解决方案? (2认同)

Mar*_* RS 10

最佳实践可能是为两个片段创建接口,然后让活动实现接口.您希望片段之间具有良好的分离,以便您可以在其他位置重用它们.