• fragment 给 activity 传数据


        //Fragment向Activity传值(接口回调)
        //1.定义一个接口,在该接口中声明一个用于传递数据的方法
        //2.让Activity实现该接口,然后重写回调方法,获取传入的值,然后做处理
        //3.在自定义Fragment中,声明一个回调接口的引用
        //4.在onAttach中法中,为第三步的引用赋值
        //5.用引用调用传递数据的方法

    在fragment.java

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                                 Bundle savedInstanceState) {
            // Inflate the layout for this fragment
            return inflater.inflate(R.layout.fragment_fragment3, container, false);
        }
    
        private MyListener ml;
    
        @Override
        public void onAttach(Context context) {
            super.onAttach(context);
            ml = (MyListener) getActivity();
            ml.sendMsg("消息");
        }
    
        public interface  MyListener{
            public void sendMsg(String msg);
        }

    在mainactivity.java 实现接口

    public class MainActivity extends AppCompatActivity implements Fragment3.MyListener {
    
        @Override
        public void sendMsg(String msg) {
            Log.e(TAG,"Fragment传回的数据:"+msg);
        }
    }

    一个示例:

    https://www.jianshu.com/p/fce1e2b011ae

  • 相关阅读:
    结对-贪吃蛇游戏结对编项目设计文档
    java基础语法day04
    java基础语法day03
    轻量化ViewController的几个小技巧
    __weak与__block修饰符的区别
    OC与Swift的主要区别
    copy与retain /深拷贝与浅拷贝
    如何理解MVC设计模式
    iOS常见加密方法
    关于RunLoop
  • 原文地址:https://www.cnblogs.com/yuguangyuan/p/13226781.html
Copyright © 2020-2023  润新知