LayoutInflater概述
本文根据官方文档LayoutInflater Class Overview翻译,水平有限,敬请谅解。
布局泵(LayoutInflater)根据XML布局文件来绘制视图(View)对象。这个类无法直接创建实例,要通过context对象的getLayoutInflater()或getSystemService(String)方法来获得实例,这样获得的布局泵实例符合设备的环境配置。
LayoutInflater inflater = (LayoutInflater)context.getSystemService
Context.LAYOUT_INFLATER_SERVICE);
要使用其它LayoutInflater.Factory为你的视图创建新的布局泵,你可以先使用cloneInContext(Context)克隆一个视图工厂,然后使用setFactory(LayoutInflater.Factory)为它设置视图工厂。
使用布局泵的好处是因为性能。编译器在编译时会对XML布局文件做预处理,布局泵在运行时根据资源文件(R)创建该视图就得心应手。你别指望在运行时使用布局泵和XmlPullParser来解析一个XML原文件。