Android(Java):LayoutInflater

来源:互联网 发布:剑三菊花插件数据下载 编辑:程序博客网 时间:2024/06/09 21:14

在实际工作中,事先写好的布局文件往往不能满足我们的需求,有时会根据情况在代码中自定义控件,这就需要用到LayoutInflater。
LayoutInflater在Android中是“扩展”的意思,作用类似于findViewById(),不同的是LayoutInflater是用来获得布局文件对象的,而

findViewById()是用来获得具体控件的。LayoutInflater经常在BaseAdapter的getView方法中用到,用来获取整个View并返回。
LayoutInflater的用法有三种:

第一种方法:

LayoutInflater inflater = LayoutInflater.from(this);  

View layout = inflater.inflate(R.layout.main, null);  

第二种方法:

LayoutInflater inflater = getLayoutInflater();  

View layout = inflater.inflate(R.layout.main, null);  

第三种方法:

LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);  

View layout = inflater.inflate(R.layout.main, null);  

代码:

    mInflater = getLayoutInflater();

    view = mInflater.inflate(R.layout.introduce_view, null);
    mImageView2 = (ImageView)view.findViewById(R.id.image2);
    helpbigtext = (TextView)view.findViewById(R.id.helpbigtext);
    helpsmalltext = (TextView)view.findViewById(R.id.helpsmalltext);