zoukankan      html  css  js  c++  java
  • Fragment argument

    每个Fragment实例都可以附带一个Bundle对象,该bundle包含键值对,可以像附加extra到Activity的intent中那样使用他们。一个键值对即一个argument。

    创建fragement argument,首先创建Bundle对象,然后,使用Bundle限定类型的“put”方法,将argument添加到bundle中。如以下代码所示:

    Bundle args = new Bundle();
            args.putSerializable(ARG_CRIME_ID,crimeId);
    
            CrimeFragment fragment = new CrimeFragment();
            fragment.setArguments(args);
            return fragment;

    fragment有两种方式获取保存在activity的intent内的数据信息 * 方式一:即直接在fragment中调用getActivity().getIntent()方法获取托管Activity的intent,然后为extra添加key,得到intent内的extra信息。 * 但该方法牺牲了fragment的封装性,fragment不再是可复用的构建单元,因为它总需要由某个具体activity托管着。 * 方式二:先创建Bundle对象,将activity的intent内的数据信息argument添加到bundle中,再调用Fragment.setArguments(Bundle)方法, * 因为每一个fragment实例都可附带一个Bundle对象。如下代码既是。 * * 注意:交互的activit和fragment不需要也无法同时保持通用独立性。托管activity就应该知道有关托管fragment方法的细节, * 但fragment则不必知道其托管activity的细节问题。 */

  • 相关阅读:
    python各种运算优先级一览表
    python数据类型之元组、字典、集合
    python数据类型之列表
    element.scrollHeight,scrollTop
    window.pageYOffset
    msdn getBoundingClientRect()
    js addEventListener
    js 原生滚动到指定元素(元素滚动到可视范围)
    css 选择器判断属性有无
    electron 查看版本信息
  • 原文地址:https://www.cnblogs.com/chase1/p/7168422.html
Copyright © 2011-2022 走看看