`

android中fragment和activity之间相互通信

 
阅读更多

在用到fragment的时候,老是会遇到一个问题,就是fragment与activity之间的通信。下面就来记录一下activity和fragment之间 通过实现接口来互相通信的方法。

private OnMainListener mainListener;

// 绑定接口

@Override

public void onAttachFragment(Fragmentfragment) {

try {

mainListener = (OnMainListener)fragment;

} catch (Exception e) {

throw new ClassCastException(this.toString() + " must implementOnMainListener");

}

super.onAttachFragment(fragment);

}

// 接口

public interface OnMainListener {

public void onMainAction();

}

 onMainAction方法是activity向fragment发出通信的方法,里面可以放参数, 在要发出通信的地方直接调用该方法即可。

public class MyFragment extends Fragment implementsOnMainListener {

……………………

@Override

public voidonMainAction() {

//这里是实现通信的接口

}

 ----------------------------------------------------------------------------

2. fragment向activity 发出通信:(和前面差不多,把它调过来用就可以)

private OnFragmentListener mListener;

@Override

public void onAttach(Activity activity) {

super.onAttach(activity);

try {

mListener = (OnFragmentListener) activity;

} catch (ClassCastException e) {

throw newClassCastException(activity.toString() + " must implement OnFragmentListener");

}

}

public interface OnFragmentListener {

public void onFragmentAction(intflag);

}

 

public class MainActivity extends Activity implements OnFragmentListener{

………………

// 实现接口方法

@Override

public void onFragmentAction(int flag) {

//实现通信的接口

}

 两者都是通过接口的实现来进行通信的,重要的地方就是分别在onAttachFragment和 onAttach方法中进行接口绑定。

通信还有其他方法的,比如广播、静态handler等,这里就不赘述了。

end~

 

 

1
0
分享到:
评论

相关推荐

    Fragment与Activity之间通信实例

    Fragment与Activity之间的通信是Android开发中常见的需求,特别是在创建复杂、动态布局时。本实例将深入探讨这一主题,讲解如何在Fragment和Activity之间有效地传递数据和执行操作。 首先,让我们了解Fragment和...

    详解Android activity与fragment之间的通信交互

    在开发过程中不可避免的会出现fragment与fragment,fragment与activity之间的通信交互问题。 本章讲述如何实现fragment与activity之间的通信。 一、APP构成 MainActivity+底部导航栏; 二、通信目的 MainActivity中...

    Fragment和Activity通信以及Fragment之间通信的方式(二)

    在Android应用开发中,Fragment和Activity是构成用户界面的基本组件。Fragment可以理解为一个可重用的UI模块,而Activity则是承载...通过分析和运行这样的示例,开发者可以更好地掌握Fragment和Activity通信的细节。

    Android fragment和activity实现相互通信demo

    在Android应用开发中,...总结来说,Fragment和Activity之间的通信是Android开发中的重要技能,理解并熟练掌握这些通信方式有助于构建高效、可扩展的应用程序。在实际开发中,要根据项目需求和最佳实践选择合适的方法。

    Fragment的介绍,以及Fragment与Activity之间的通信

    理解Fragment及其与Activity之间的通信对于开发高效且灵活的Android应用至关重要。 首先,Fragment的生命周期与Activity紧密关联。Fragment有自己的onCreate(), onCreateView(), onStart(), onResume()等方法,这...

    Android中Fragment和Activity之间的互操作代码例子

    总之,Fragment和Activity之间的交互是Android应用开发中的常见任务。理解并熟练掌握它们的通信机制、生命周期管理和协作方式,对于构建复杂的用户界面至关重要。在实际项目中,灵活运用各种通信手段,可以提高代码...

    fragment和activity之间通信

    在这个小Demo中,我们将深入探讨如何在Fragment和Activity之间进行通信。 首先,理解Fragment和Activity的关系。一个Activity可以包含一个或多个Fragment,而Fragment也可以通过嵌套的方式包含其他Fragment。它们...

    Fragment和Activity通信以及Fragment之间通信的方式(1)

    1. **使用接口**:与Fragment和Activity通信类似,两个Fragment可以通过定义接口,互相调用对方的方法来通信。这种方法需要确保接口的生命周期管理正确,防止内存泄漏。 2. **通过Activity中转**:两个Fragment可以...

    Fragment 与 Activity之间传递数据

    Fragment与Activity之间的通信是Android开发中的常见任务。有多种方式可以实现这种通信,如通过方法回调、使用Bundle、事件总线等。本文将重点讲解使用setArguments方法传递数据。 setArguments()是Fragment类的一...

    Fragment与Activity使用Handler进行交互

    总结来说,Handler是Android中实现线程间通信的重要机制,它在Fragment和Activity的交互中扮演着关键角色。正确理解和使用Handler能帮助开发者构建高效、稳定的Android应用程序。在实际开发中,还应结合其他通信方式...

    activity与fragment以及fragment与fragment之间的通信

    在Android应用开发中,Activity和Fragment是两个核心组件,它们之间的通信以及Fragment之间的通信是构建复杂用户界面的关键。本文将详细探讨Activity与Fragment、Fragment与Fragment之间如何有效地进行通信。 一、...

    Fragemt与Activity之间的通信 双Fragment通信

    当一个Activity中存在多个Fragment时,它们之间的通信是必不可少的,以便协同工作,提供良好的用户体验。本篇将详细探讨Fragment与Fragment以及双Fragment之间的通信机制。 首先,了解Fragment的基本概念:Fragment...

    Fragment与Activity 之间的数据传输

    在现代Android开发中,推荐使用ViewModel和LiveData配合Fragment和Activity进行数据通信。ViewModel能跨过配置改变保留数据,LiveData则提供了观察者模式,使数据能在Activity和Fragment之间实时同步。 总结来说,...

    Android-Fragment和Activity的传值通例子

    在Android应用开发中,Fragment和Activity是两个核心组件,它们共同构建了用户界面。Fragment可以理解为Activity的一部分,可以在不同的Activity之间复用,也可以在同一个Activity内动态添加或移除。本篇将深入探讨...

    Fragment和Activity双向交互

    在Android应用开发中,Fragment和Activity是两个核心组件,它们之间的有效交互对于构建复杂的用户界面至关重要。Fragment可以看作是Activity的一部分,具有自己的生命周期,并可以在Activity中动态添加、移除或替换...

    Android Fragment与Activity之间的相互通信实例代码

    Android Fragment与Activity之间的相互通信 前言 自从Android3.0引入Fragment之后,主要是为了支持动态灵活的界面设计和屏幕的适配问题。Fragmenty不能单独存在,必须依赖Activity作为视图展示的一部分,同事它具有...

    Fragment与Activity通信的小例子

    在"FragmentActivityͨѶ"这个文件中,应该包含了上述示例的完整代码,你可以下载后在Android Studio中运行,以更好地理解这一通信机制。同时,"说明.txt"文件可能提供了关于如何运行和测试这个例子的详细步骤。

    Fragment和Activity交互(Handler方式)

    在Android应用开发中,Fragment和Activity是两个核心组件,它们共同构建了用户界面。Fragment代表一个可重用的UI部分,而Activity则是程序中的一个窗口,它可以包含一个或多个Fragment。有时,我们需要在Fragment和...

    Fragment和Activity交互(接口方式)

    4. **调用接口方法**:在Fragment中,当需要与Activity通信时,直接调用接口中定义的方法。例如,在按钮点击事件中,调用`mEventListener.onButtonClicked()`。 ```java button.setOnClickListener(new View....

Global site tag (gtag.js) - Google Analytics