fragment向fragment传值

一,首页布局
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
tools:context="laobi.com
.viewpagedemo.MainActivity">

  <fragment
  android:id="@+id/fragment_left"
  android:layout_width="0dp"
  android:layout_weight="1"
  android:layout_height="match_parent"/>

<fragment
  android:id="@+id/fragment_right"
  android:layout_width="0dp"
  android:layout_weight="1"
  android:layout_height="match_parent"/>

</LinearLayout>

二,实现方式;

  • 1,方式一:先调用getFragmentManager()对象,然后调用findFragmentById()方法获得目标fragment,将数据传递到目标fragment
    Fragment fragment_left = getFragmentManager().findFragmentById(R.id.fragment_left);
    fragment_left.setTextView(et_frafment.getText().toString().trim())//setTextView()是目标fragment自己定义的方法

  • 2,方式二: 先调用getFragmentManager()对象,然后调用findFragmentById()方法获得目标fragment,再调用getView()获得目标fragment的view对象,最后调用view的findViewById()获得目标控件
    TextView tv_fragment= (TextView)getFragmentManager()
    .findFragmentById(R.id.fragment_left).getView().findViewById(R.id.tv_fragment);

  • 3,方式三:先调用getActivity()获取所在的activity对象后,然后通过findViewById()找到目标控件(该目标fragment在activity中,所以可以通过activity进行findViewById)
    TextView tv_fragment = (TextView)getActivity().findViewById(R.id.tv_fragment);
    tv_fragment.setText(et_frafment.getText().toString().trim());

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 动态创建fragment的流程 1.0 新建一个类继承fragment. 2.0 在自定义的fragment里面复...
    左神话阅读 2,233评论 0 3
  • Fragment是什么 说了半天的Fragment,也看到这么多次Fragment这个名词出现,那么Fragmen...
    October5阅读 8,296评论 0 8
  • 《Android Fragment完全解析,关于碎片你所需知道的一切》 我们都知道,Android上的界面展示都是...
    cxm11阅读 2,205评论 2 19
  • Fragment 描述:   翻译可以译为:碎片、片段,Android 3.0开始引入fragments 的概念;...
    Lost_Robot阅读 1,726评论 0 11
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,951评论 25 708