Activity、Fragment之间的传值

1、Activity和Activity之间传值


1、使用Intent

Activity、Fragment之间的传值_第1张图片
Intent

2、使用Intent结合Bundle

Activity、Fragment之间的传值_第2张图片
Intent+Bundle

3、传自定义对象实现(实现Serialzable接口,性能较差,系统自动处理)

Activity、Fragment之间的传值_第3张图片
传自定义对象

4、传自定义对象(实现Parcelable,性能较好)


Activity、Fragment之间的传值_第4张图片
实现Parcelable接口

2、Activity向Fragment传递数据(2种方式)

1、setArgument和getArgument传递数据,只适用于Fragment创建的时候,从Activity给Fragment传递数据

代码:

Activity:

Activity、Fragment之间的传值_第5张图片
Activity

Fragment:

Fragment

2、在Fragment创建成功后,Activity通知Fragment做某些实现,通过FragmentManager找到Fragment实例,然后Fragment实例调用相应的方法

Activity:

Activity

Fragment:

Activity、Fragment之间的传值_第6张图片
Fragment

3、Fragment向Activity传递数据(2种方式)

1、在Fragment中通过getActivity()获取Activity实例,调用Activity(不推荐,耦合性强)

Fragment

2、接口回调(推荐使用)

交互的接口:

Activity、Fragment之间的传值_第7张图片
接口

Fragment:

Activity、Fragment之间的传值_第8张图片
Fragment

Activity:

Activity、Fragment之间的传值_第9张图片
Activity

你可能感兴趣的:(Activity、Fragment之间的传值)