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

时间:2023-12-20 16:56:44

获取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 );

使用方法:

public class MyInflate extends Activity{
     private TextView tv;
     public void OnCreate(Bundle savedInstanceState){
         super .onCreate(savedInstanceState);
         //setContentView(R.layout.main);
         //tv = (TextView) findViewById(R.id.tv);
         LayoutInflater inflate = LayoutInflater.from( this );
         View view = inflate.inflate(R.layout.main, null );
         setContentView(view);
     }
}