【Android进阶学习】LayoutInflater的应用
来源:IT的点点滴滴 责任编辑:栏目编辑 发表时间:2013-07-02 04:19 点击:次
LayoutInflater在Android中是“扩展”的意思,作用类似findViewById( ),它在Android开发中的作用是很大的。LayoutInflater经常在BaseAdapter的getView方法中用到,用来获取整个View并返回。
LayoutInflater与findViewById( )的不同点:
- LayoutInflater是将XML中的Layout转换为View放入.java代码中
- findViewById()是找具体xml下的具体组件(如:Button,TextView,ImageView等)。
获得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);
getSystemService()是Android很重要的一个API,它是Activity的一个方法,根据传入 的NAME来取得对应的Object,然后转换成相应的服务对象。以下介绍系统相应的服务。其中LAYOUT_INFLATER_SERVICE返回的对象是 LayoutInflater,作用是取得XML定义的View。
第一个实例:
main.xml
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <EditText
- android:id="@+id/text"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- &
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>