Fragment 碎片与 Activity 活动之间的通信

虽然fragment是嵌入在activity中显示的,但他们各自都是一个独立的类,因此不能直接进行通信

为了便于碎片和活动之间的通信,可以通过调用FragmentManager的findFragmentById()方法,在活动中得到对应碎片的实例。

1.活动调用碎片实例及方法

InfoFragment infofragment = (Infofragment) getSupportFragmentManager().findFragmentById(R.id.info_fragment); 

2.碎片调用活动实例及方法

每个碎片都可以用getActivity() 直接获取到碎片所在Activity的实例

另外在碎片中不能直接使用findViewById() 方法获取 Fragment中的组件

需要getActivity().findViewById() 或者 getView().findViewById() 来获取

猜你喜欢

转载自blog.csdn.net/qq_40938301/article/details/82256855
今日推荐