Activity与Fragment之间的通信

有时候我们需要在fragment与Activity之间通信,下面简单的总结下。

首先贴一个结果吧。在输入框中输入信息-->按钮-->弹出消息toast


分两部分:

Activity——>Fragment

在Activity中创建Bundle数据包,并且调用Fragment的setArguments(Bundle bundle).

FragmentActivity.java

fragment.java

 Fragment——>Activity

需要在Fragment中定义一个内部回调接口,并且在包含该fragment的Activity实现该回调接口,这样Frgment就可以传递数据给Activity。

1、在Fragment中定义一个内部回调接口,并在Fragment中的onAttach方法中得到接口对象

fragment.java

在onCreateView中调用接口的方法

2、在包含该fragment的Activity实现该回调接口

FeagmentActivity.java

有错的地方请多多指教!

时间: 2024-10-03 16:30:46

Activity与Fragment之间的通信的相关文章

搭建Activity与Fragment,Fragment与Fragment之间的通信架构

内心独白:  曾几何时但凡听到架构之两个字,总能联想到老子说的一句话:"玄之又玄,众妙之门".说不清,道不明.就像是看不见,摸不着,但又真实存在的东西给我们的那种感觉. 回顾人类的历史,繁重的劳动让我们意识到工具的必要性和重要性,并学会了去发明和使用工具.当我进行了大量的,甚至是繁重的编程之后,也开始重新意识到架构的必要性和重要性.当然软件工程发展了这么多年,构架与模式之类的东西前辈们早就说过并且践行与呼吁过,并且也留下了很多值得我们学习和研究的构架模式.但于我个人而言,在没有经历过痛

Fragment的生命周期&同一Activity下不同Fragment之间的通信

Android开发:碎片Fragment完全解析(2) Fragment的生命周期 和Activity一样,Fragment也有自己的生命周期,理解Fragment的生命周期非常重要,我们通过代码的方式来瞧一瞧Fragment的生命周期是什么样的: 1 publicclass Fragment1 extends Fragment { 2 publicstaticfinal String TAG = "Fragment1"; 3 @Override 4 public View onCre

[转][译][Android基础]Android Fragment之间的通信

2014-2-14 本篇文章翻译自Android官方的培训教程,我也是初学者,觉得官方的Training才是最好的学习材料,所以边学边翻译,有翻译不好的地方,请大家指正. 如果我们在开发过程中为了重用Fragment这个UI组件,那么我们应该把Fragment设计成是“自包含”.“模块化”组件,这种组件定义自己的布局和行为.一旦我们成功定义了这样的可重用的Fragment,我们就可以将他们与Activity进行关联,然后与整个Application进行整体的UI组装. 我们经常需要一个Fragm

两个简单Fragment之间的通信

现在我要做个Fragment与Fragment之间的通信小demo. 建立两个Fragment,然后各添加1个按钮和1个TextView. 单击Fragment1的按钮修改Fragment2里的TextView文本. 相同的,单击Fragment2里面的按钮修改Fragment1的TextView文本. 前期准备:在Activity里面放进两个fragment: 1和2,再为其各绑定View. public class Fragment1 extends Fragment { public Vi

activity与fragment之间的传递数据

首先activity之间的数据传递就是 用intent和intent+bundle intent 传递 Intent i= new Intent(MainActivity.this,TheAty.class); i.putExtra("date","Hello SWWWWWW"); startActivity(i); 接受数据 Intent i =getIntent(); tv=(TextView) findViewById(R.id.tv); //通过"

Android - Fragment (三)不同Fragment之间的通信

在Fragment的java文件中,可以使用getActivity()来获得调用它的activity, 然后再找到另一个Fragment,进行通信 getActivity().getFragmentManager().findFragmentById(R.id.fragment_list); 但这样做耦合度太高,不方便后续的修改操作 Fragment与其附着的Activity之间的通信,都应该由Activity来完成 不能是多个Fragment之间直接通信 Fragment与其附着的Activi

11Communicating with Other Fragments(Fragment之间的通信)

In order to reuse the Fragment UI components, you should build each as a completely self-contained, modular component that defines its own layout and behavior. Once you have defined these reusable Fragments, you can associate them with an Activity an

activity与fragment之间传递数据

总结:无论是activity给fragment传递数据,还是fragment给activity传递数据,都把activity和fragment都当做一个普通的对象,调用它的方法,传递参数. 1.Fragment中通过getActivity()然后进行强制转化,调用Activity中的公有方法 ((XXXXActivity)getActivity()).fun(); 2.Activity在切换Fragment的时候,通过setArguments向Fragment传递参数,Fragment通过get

Activity和Fragment之间通信

MainActivity4代码(Activity-Fragment通信) 1 package fragmentdemo.example.administrator.fragmentdemo; 2 3 import android.app.Activity; 4 import android.app.FragmentManager; 5 import android.app.FragmentTransaction; 6 import android.os.Bundle; 7 import andr