zoukankan      html  css  js  c++  java
  • [android] fragment的生命周期和通讯

    重写一下生命周期方法

    所有的fragment都是依附于activity的,只有当activity显示出来的时候,fragment才能够创建上去

    onAttach,当附加到activity上的时候

    onCreate,当界面创建的时候

    onCreateView,创建后把View对象返回回来,重要

    onActivityCreate,当activity创建的时候

    onStart,当界面变成用户可见的时候

    onResume,当获取焦点的时候

    onPause,当失去焦点的时候

    onStop,当界面不可见的时候

    onDestroy,当界面销毁的时候

    onDestroyViewView对象销毁,重要

    onDestroyfragment销毁

    onDetach,取消挂载

     fragment之间的通讯

    布局界面里面有两个fragment,在一个fragment里面修改另外一个fragment的内容

    一个fragment1里面有Button,另一个fragment2里面有个TextView,点击按钮实现修改文本

    重写fragment1onCreateView()方法,

    调用layoutInflater对象的inflate()方法,把布局文件转成View对象

    调用View对象的findViewId()方法,得到Button对象

    调用Button对象的setOnClicklistener()方法,设置点击事件,匿名内部实现onClick()方法

    onClick()方法里面

    调用getActivity()方法,得到容器activity对象,调用getFragmentManager()方法,得到FragmantManager对象,

    调用FragmentManager对象的findFragmentById(),获取Fragmant2对象,参数:另一个Fragment2的控件id

    Fragment2类里面要暴露一个方法,修改自己内部的控件内容

    在上一步得到的Fragment对象里调用这个暴露的方法

    利用中间的activity容器来达到两个Fragment通讯的目的

  • 相关阅读:
    ubuntu 安装qt5 qtcreator
    ubuntu 更换源
    ubuntu go grpc protobuf 环境的搭建
    xgboost学习
    python 日志打印
    pycharm指定到自己安装的python解释器
    pip安装换成国内的镜像源
    mac蓝牙连接bose耳麦后,只有左声道有声音
    vim粘贴python代码乱码解决办法
    docker某个服务一直起不来的原因
  • 原文地址:https://www.cnblogs.com/taoshihan/p/5410342.html
Copyright © 2011-2022 走看看