LayoutInflater 用法及含义

2016-07-18  本文已影响0人  Jeeno

概述

解释如下:

inflate()的作用就是将一个用xml定义的布局文件查找出来,注意与findViewById()的区别,inflate是加载一个布局文件,而findViewById则是从布局文件中查找一个控件。

使用

假设当前上下文环境为 context

  1. 获取LayoutInflater的方法
    LayoutInflater inflater = LayoutInflater.from(context);

     LayoutInflater inflater = getLayoutInflater();
    
     LayoutInflater inflater = context.getSystemService(LAYOUT_INFLATER_SERVICE);
    
  2. 关于LayoutInflater类inflate(int resource, ViewGroup root, boolean attachToRoot)方法三个参数的含义

    • resource:需要加载布局文件的id,意思是需要将这个布局文件中加到Activity中来操作。
    • root:需要附加到resource资源文件的根控件,什么意思呢,就是inflate()会返回一个View对象,如果第三个参数attachToRoot为true,就将这个root作为根对象返回,否则仅仅将这个root对象的LayoutParams属性附加到resource对象的根布局对象上,也就是布局文件resource的最外层的View上,比如是一个LinearLayout或者其它的Layout对象。
    • attachToRoot:是否将root附加到布局文件的根视图上
上一篇下一篇

猜你喜欢

热点阅读