Activity和Fragment、Fragment和Fragment之间的通信

虽然Fragment是嵌套在Activity中显示的,但是Fragment和Activity是存在于不同的类中的 ,之间并不能进行直接通信


一、Activit和Fragment的通信

在Activity中,可以通过getSupportFragmentManager().findFragmentById()或者是findFragmentByTag()的方法来获取Fragment的实例对象

在Fragment中,可以通过getActivity()方法来获取当前Fragment所属的Acitivity的实例对象


二、Fragment和Fragment的通信

1、在Fragment中同样可以通过getSupportFragmentManager().findFragmentById()来获取其他的Fragment实例对象,如果仅需要对其他Fragment的某个控件进行传值,可以使用getSupportFragmentManager().findFragmentById().getView.findViewById()获取到该控件实例

2、由于Fragment是嵌入Acitivity中显示的,在Fragment中也可以使用getActivity().findViewById()直接获取到其他属于当前Activity的Fragment中的空间实例


猜你喜欢

转载自blog.csdn.net/lllx9464/article/details/79372131
今日推荐