首页 > 代码库 > inflate方法与findViewById的区别

inflate方法与findViewById的区别

LayoutInflater作用是将layout的xml布局文件实例化为View类对象。

对于一个没有被载入或者想要动态载入的界面,都需要使用LayoutInflater.inflate()来找 res/layout下的 xml 布局文件,并且实例化为View类对象;

获取LayoutInflater的方法有如下三种:

LayoutInflater inflater=(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);View layout = inflater.inflate(R.layout.main, null); LayoutInflater inflater = LayoutInflater.from(context); //该方法实质就是第一种方法View layout = inflater.inflate(R.layout.main, null); LayoutInflater inflater = getLayoutInflater();//在Activity中可以使用,实际上是View子类下window的一个函数View layout = inflater.inflate(R.layout.main, null);

·findViewById() 是找具体 xml 布局文件中的具体 widget 控件(如:Button、TextView 等)。