A页面///

package com.example.mmaster.jiekoumyapplication.fragment;import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;import com.example.mmaster.jiekoumyapplication.MainActivity;
import com.example.mmaster.jiekoumyapplication.R;
import com.example.mmaster.jiekoumyapplication.adapter.MyAdapter;
import com.example.mmaster.jiekoumyapplication.bean.MyBean;import java.util.ArrayList;/**
 * A simple {@link Fragment} subclass.
 */
public class AFragment extends Fragment {private RecyclerView recy;public ArrayList<MyBean> myBeans;public MyAdapter myAdapter;private onlistener listener;
    //定义int类型的ipublic int i;public AFragment() {// Required empty public constructor
    }@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {// Inflate the layout for this fragment
        View inflate = inflater.inflate(R.layout.fragment_a, container, false);initView(inflate);initData();initListener();return inflate;}private void initListener() {
//适配器调用监听myAdapter.setOnCliK(new MyAdapter.OnClik() {@Override
       public void OnCliklistener(int position) {//1、点击传值(信号弹)
           i=position;((MainActivity)getActivity()).vp.setCurrentItem(1);int img = myBeans.get(position).getImg();String name = myBeans.get(position).getName();String age = myBeans.get(position).getAge();MyBean myBean=new MyBean(img,name,age);listener.itemlistener(myBean);}});}private void initData() {myBeans = new ArrayList<>();for (int i = 0; i < 5; i++) {MyBean myBean = new MyBean(R.mipmap.ic_launcher, "兴哥", "男");myBeans.add(myBean);}
        //适配器调全局myAdapter = new MyAdapter(myBeans, getContext());recy.setAdapter(myAdapter);}private void initView(View inflate) {recy = (RecyclerView) inflate.findViewById(R.id.recy);
//布局管理器LinearLayoutManager manager = new LinearLayoutManager(getContext());recy.setLayoutManager(manager);}
    //接口回调public  interface onlistener{void  itemlistener(MyBean myBean);}public  void setonlistener(onlistener listener){this.listener=listener;}
}

///A页面的适配器——最下边写接口回调

package com.example.mmaster.jiekoumyapplication.adapter;import android.content.Context;
import android.media.Image;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;import com.example.mmaster.jiekoumyapplication.R;
import com.example.mmaster.jiekoumyapplication.bean.MyBean;
import com.squareup.picasso.Picasso;import org.w3c.dom.Text;import java.util.ArrayList;/**
 * Created by mMaster
 * on 2018/4/8.
 * at 北京
 */

public class MyAdapter extends RecyclerView.Adapter<MyAdapter.Holder> {private ArrayList<MyBean> myBeans;private Context mc;private OnClik onClik;public MyAdapter(ArrayList<MyBean> myBeans, Context mc) {this.myBeans = myBeans;this.mc = mc;}@Override
    public MyAdapter.Holder onCreateViewHolder(ViewGroup parent, int viewType) {View inflate = LayoutInflater.from(mc).inflate(R.layout.item, parent, false);return new Holder(inflate);}@Override
    public void onBindViewHolder(MyAdapter.Holder holder, final int position) {holder.age.setText(myBeans.get(position).getAge());holder.name.setText(myBeans.get(position).getName());Picasso.with(mc).load(myBeans.get(position).getImg()).into(holder.img);holder.itemView.setOnClickListener(new View.OnClickListener() {@Override
            public void onClick(View v) {onClik.OnCliklistener(position);}});}@Override
    public int getItemCount() {return myBeans.size();}public class Holder extends RecyclerView.ViewHolder {private final ImageView img;private final TextView name;private final TextView age;public Holder(View itemView) {super(itemView);img = itemView.findViewById(R.id.img);name = itemView.findViewById(R.id.name);age = itemView.findViewById(R.id.age);}}
//接口public interface OnClik{void OnCliklistener (int position);}public void setOnCliK(OnClik onClik){this.onClik=onClik;}
}
B页面//

B页面XML:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center"
    tools:context="com.example.mmaster.jiekoumyapplication.fragment.BFragment"><!-- TODO: Update blank fragment layout -->
    <ImageView
        android:id="@+id/img"
        android:layout_width="200dp"
        android:layout_height="200dp"
        android:background="@mipmap/ic_launcher"
        android:layout_gravity="center_horizontal" /><EditText
        android:id="@+id/name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="hh" /><EditText
        android:id="@+id/age"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="hh" /><Button
        android:id="@+id/qd"
        android:text="确定"
        android:layout_width="150dp"
        android:layout_height="wrap_content" />
</LinearLayout>
B页面//
package com.example.mmaster.jiekoumyapplication.fragment;import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;import com.example.mmaster.jiekoumyapplication.MainActivity;
import com.example.mmaster.jiekoumyapplication.R;
import com.example.mmaster.jiekoumyapplication.bean.MyBean;/**
 * A simple {@link Fragment} subclass.
 */
public class BFragment extends Fragment implements AFragment.onlistener {private ImageView img;private TextView name;private TextView age;private Button qd;public BFragment() {// Required empty public constructor
    }@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {// Inflate the layout for this fragment
        View inflate = inflater.inflate(R.layout.fragment_b, container, false);initView(inflate);initData();return inflate;}private void initData() {//2、  B页面修改
          ((MainActivity)getActivity()).aFragment.setonlistener(this);//3、确定修改返回
                    qd.setOnClickListener(new View.OnClickListener() {@Override
                  public void onClick(View v) {((MainActivity)getActivity()).vp.setCurrentItem(0);((MainActivity)getActivity()).aFragment.myBeans.get(((MainActivity)getActivity()).aFragment.i).setName(name.getText().toString());((MainActivity)getActivity()).aFragment.myBeans.get(((MainActivity)getActivity()).aFragment.i).setAge(age.getText().toString());((MainActivity)getActivity()).aFragment.myAdapter.notifyDataSetChanged();}});}private void initView(View inflate) {img = (ImageView) inflate.findViewById(R.id.img);name = (TextView) inflate.findViewById(R.id.name);age = (TextView) inflate.findViewById(R.id.age);qd = inflate.findViewById(R.id.qd);}@Override
    // 2、自动调出来的
    public void itemlistener(MyBean myBean) {name.setText(myBean.getName());age.setText(myBean.getAge());}
}

接口传值、回传、修改Fragment 老王版本相关推荐

  1. 狗蛋(驱动小白)和老王(硬件老司机)关于硬件那点事儿的一次密谈

    引子 "老王,有个bug啊,很紧急啊?" QA急忙反馈到. "什么问题? 老王心里咯噔了下,心想,NND,被QA缠住,看来今晚又得和我的躺椅相依为伴了." &q ...

  2. perl数组硬引用_Perl 继续前行,Perl 7 将是下一代(硬核老王点评版)

    它是默认带有现代行为的 Perl 5,将为以后更大的变化奠定基础. 来源:https://linux.cn/article-12349-1.html 作者:Brian D Foy 译者:Xingyu. ...

  3. Android 8.0 linux内核,在Ubuntu上为Android增加硬件抽象层(HAL)模块访问Linux内核驱动程序---Android8.0版本实现-对照老罗版本...

    老罗版本参见:https://blog.csdn.net/luoshengyang/article/details/6573809 在Android硬件抽象层(HAL)概要介绍和学习计划一文中,我们简 ...

  4. 【老王读Spring AOP-3】Spring AOP 执行 Pointcut 对应的 Advice 的过程

    Spring AOP 执行 Pointcut 对应的 Advice 的过程 前言 版本约定 正文 jdk proxy 是如何执行 Pointcut 对应的 Advice 的? 获取 Advice 链的 ...

  5. 隔壁老王的女朋友都能学会的ELK实战之elasticsearch

    文章目录 准备工作 本文所用操作系统: 系统详细信息: 系统内核: 系统版本: 系统内存 本文所用ELK软件版本: 软件下载地址: 将ELK所需要的软件上传到服务器 新建文件夹xinsz08 上传软件 ...

  6. 厉害了隔壁老王,带你入坑腾讯联机对战引擎!

    前文导读: <联机对战!隔壁老王都入坑了,你还在等啥?> 前面我们介绍了『开心鼠吃象』这个游戏的玩法,以及对战引擎的注册开通,这次给大家介绍MGOBE实战操作! 如果你对MGOBE还不太了 ...

  7. 不容错过!鸿蒙开发必备神器,老王月薪过万的秘诀都在这了

    大家应该都知道在华为开发者大会HDC.Together 2021主题演讲会上,华为发布了HarmonyOS3.0.0开发者预览版. 预览版本中包含IDE工具DevEco Studio 3.0和DevE ...

  8. 老王,你的wifi密码怎么改了啊

    最近看到一则新闻:说小朋友一天在家上不了网课了,原来是邻居家的wifi 密码改了.那么问题来了,我们怎么知道邻居家的密码改了呢? 如果邻居 ""老王""的密码还 ...

  9. 在昨天夜黑风高的晚上,我偷了隔壁老王的Python入门课件,由浅入深堪称完美!

    隔壁老王是一个资深码农,就业教育事业的秃顶之才 昨天我下楼打酱油,看他迎面走来,满目春光 我好奇的问道:老王,有什么好事,隔壁小花叫你上门了吗? 老王:秘密!! 我心想:哎呦~不错啊 半晚之时,连猫狗 ...

最新文章

  1. 伤害世界怎么自建服务器,Hurtworld伤害世界服务器怎么架设?服务器架设图文教程...
  2. 连接失败_iG.Firefox连接失败?iG新赛季仍未敲定主教练人选
  3. 我的Go+语言初体验——10秒真男人游戏
  4. 粗略。。类设计的基本经验3之笔记
  5. 比较第一与第二个字符串,是否有连续的5个字符相同.sql
  6. oracle redo 200mb,Oracle的redo log在各场景下的恢复
  7. 解决安装SQL Server 2000提示文件挂起的一般方法
  8. gulp 批量添加类名 在一个任务中使用多个文件来源
  9. java设计模式适配器模式_Java解释器设计模式
  10. Linux第十一周微职位
  11. URAL 1934 Black Spot --- 最短的简单修改
  12. requests.session()的用法
  13. 惠普bios硬重置_惠普BIOS密码重置工具|惠普笔记本BIOS密码重置工具 - 万方软件下载站...
  14. 使用加密解密技术和CA认证解决网络传输中的安全隐患
  15. cad尺寸标注快捷键_CAD快速在尺寸标注后加上公差的方法有哪些?【AutoCAD教程】...
  16. virtualbox 创建桥接网络_VirtualBox 配置虚拟网卡(桥接),实现主机-虚拟机网络互通...
  17. PDF文件转换成什么格式最适合编辑?
  18. 蓝桥杯——种植园问题(prev54)
  19. git clone时遇到问题:remote: Incorrect username or password ( access token )
  20. ipad协议最新版本

热门文章

  1. 虚拟机VMware Workstation 不支持的硬件版本
  2. 微软发布文件恢复程序,超好用(附下载地址)
  3. windows使用laragon配置开发环境
  4. JAVA 网页转图片
  5. Ventoy-一种更便捷的OS启动盘制作方法
  6. 安装TC2层出现的问题
  7. RH2288V3服务器 硬件安装以及更换硬件
  8. Ciclop开源3D扫描仪软件---Horus源码分析之Image_capture.py
  9. 《每日一记 》网络篇-ARP协议与IP地址MAC地址
  10. python-App自动化测试框架——uiautomator2之元素操作方法(三)