Android--inflate

inflate

在应用中自定义一个view,获取这个view的布局,需要用到下面方法、

(LinearLayout) LayoutInflater.from(context).inflate(R.layout.contentitem, null);

一般的资料中的第二个参数会是一个null。通常情况下没有问题,但是如果我想给这个view设置一个对应的类,然后通过这个类来操作的话就会出问题。

(LinearLayout) LayoutInflater.from(context).inflate(R.layout.contentitem, this);

可以看到在inflate(XmlPullParser parser, ViewGroup root, boolean attachToRoot)函数中,只有root不等于空的情况下才能够真正的把view添加到listview中。

参数root的含义:@param root Optional view to be the parent of the generated hierarchy

就是说这个表示的是view的容器是什么。如果不告诉SDK你要把这个view放到哪里,当然就不能生成view了。

时间: 2024-10-18 20:51:11

Android--inflate的相关文章

Android——inflate 将一个xml中定义的布局找出来

通俗的说,inflate就相当于将一个xml中定义的布局找出来. 因为在一个Activity里如果直接用findViewById()的话,对应的是setConentView()的那个layout里的组件. 因此如果你的Activity里如果用到别的layout,比如对话框上的layout,你还要设置对话框上的layout里的组件(像图片 ImageView,文字TextView)上的内容,你就必须用inflate()先将对话框上的layout找出来,然后再用这个layout对象去 找到它上面的组

LayoutInflater的inflate函数用法

LayoutInflater作用是将layout的xml布局文件实例化为View类对象. 获取LayoutInflater的方法有如下三种: LayoutInflater inflater=(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View layout = inflater.inflate(R.layout.main, null); LayoutInflater inflater = L

Android之Inflate()

Inflate()作用就是将xml定义的一个布局找出来,但仅仅是找出来而且隐藏的,没有找到的同时并显示功能.最近做的一个项目就是这一点让我迷茫了好几天. Android上还有一个与Inflate()类似功能的方法叫findViewById(),二者有时均可使用,但也有区别 区别在于: 如果你的Activity里用到别的layout,比如对话框layout,你还要设置这个layout上的其他组件的内容,你就必须用inflate()方法先将对话框的layout找出来,然后再用findViewById

The method Inflate() in android

Inflate() method can find out a layout defined by xml,as like the findViewById() method,but there have some different between them. The different are: If your Activity used other layout,such as the dialog layout,and you want to set the component's co

Android LayoutInflater.inflate(int resource, ViewGroup root, boolean attachToRoot)的参数理解

方法inflate(int resource, ViewGroup root, boolean attachToRoot) 中 第一个参数传入布局的资源ID,生成fragment视图,第二个参数是视图的父视图,通常我们需要父视图来正确配置组件.第三个参数告知布局生成器是否将生成的视图添加给父视图. 我们新建一个项目测试一下: activity_main.xml <?xml version="1.0" encoding="utf-8"?> <Line

Android编程之LayoutInflater的inflate方法实例

假设你不关心其内部实现,仅仅看怎样使用的话,直接看这篇就可以. 接上篇,接下来,就用最最简单的样例来说明一下: 用两个布局文件main 和 test: 当中,main.xml文件为: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layo

[Android]LayoutInflater的inflate方法半详解

好久没写博客,作为一名刚加入android阵营的android狗,发心得刷人气来了!!!(半详解是因为说详不那么详,说不详也稍微有点详..)哈哈~~..咳..咳.. 一.Activity中的setContentView 对于刚开始学Android的新手来说,在Activity中加载布局文件的方法是在onCreate()回调方法中直接调用setContentView()方法,如: @Override protected void onCreate(Bundle savedInstanceState

Android LayoutInflater.inflate的使用及源码分析

欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/61913656 本文出自:[余志强的博客] 在实际开发中我们常常需要inflate要给布局然后添加到某个布局容器里面去, 要把xml布局文件转成一个View对象 需要使用LayoutInflater.inflate方法. 在开发中常常使用如下几种方式: inflater.inflate(layoutId, null); inflater.inflate(layoutI

Android LayoutInflater.from().inflate()源码解析

我们知道,在Activity#setContentView()中会调用PhoneWindow#setContentView().而在PhoneWindow#setContentView()中有这么一句mLayoutInflater.inflate(layoutResID, mContentParent).这行代码的作用是将我们的activity_main.xml填充到mContentParent中去.详见:setContentView源码解析.在写adapter的时候,也经常写mInflater

android LayoutInflater和inflate()方法的用法(转载)

原文出处:http://www.cnblogs.com/top5/archive/2012/05/04/2482328.html 在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById().不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化:而findViewById()是找xml布局文件下的具体widget控件(如Button.TextView等). 具体作用: 1.对于一个没有被载入或者想要动态载入的