zoukankan      html  css  js  c++  java
  • inflate(int resource, ViewGroup root, boolean attachToRoot)见解

    /**
    * Inflate a new view hierarchy from the specified xml resource. Throws
    * {@link InflateException} if there is an error.
    *
    * @param resource ID for an XML layout resource to load (e.g.,
    * <code>R.layout.main_page</code>)
    * @param root Optional view to be the parent of the generated hierarchy (if
    * <em>attachToRoot</em> is true), or else simply an object that
    * provides a set of LayoutParams values for root of the returned
    * hierarchy (if <em>attachToRoot</em> is false.)
    * @param attachToRoot Whether the inflated hierarchy should be attached to
    * the root parameter? If false, root is only used to create the
    * correct subclass of LayoutParams for the root view in the XML.
    * @return The root View of the inflated hierarchy. If root was supplied and
    * attachToRoot is true, this is root; otherwise it is the root of
    * the inflated XML file.
    */

    inflate(int resource, ViewGroup root, boolean attachToRoot)

    view=inflater.inflate(R.layout.fragment1, null,false)的三个参数详解;

    第一个参数:加载view的布局文件。

    第二个参数:

    1.参数为空的情况,xml里的根布局(也就是最外层布局),将不会被加载(xml文件的根布局会失效);

    2.不为空的情况,

    系统会调用params = root.generateLayoutParams(attrs);//根据xml文件的宽,高 获取params

     temp.setLayoutParams(params); 会把这个布局加载进去;也就是说xml文件的根布局不会失效;

    第三个参数:

    如果为true:

    系统会调用:root.addView(temp, params); 会自动调用addview();

    https://blog.csdn.net/dongpeng0314/article/details/51737899

  • 相关阅读:
    linux系统swap分区容量扩展
    linux系统lv_root分区容量扩展
    linux系统创建新LV,挂载新分区。
    linux 服务器重启后lvm 变成inactive状态解决
    Linux下使用fdisk扩大分区容量
    go语言 调用飞书群消息机器人接口
    SpringCloud Sentinel 学习笔记
    Git 笔记整理
    SpringBoot 整合 RabbitMQ 学习笔记
    js递归生成树形结构-vue
  • 原文地址:https://www.cnblogs.com/feng9exe/p/9284130.html
Copyright © 2011-2022 走看看