它们作用都是提取xml文件转换为View。LayoutInflater是用来找layout下xml布局文件,MenuInflater 用来解析定义在menu 目录下的菜单布局文件。
使用代码如下:
LayoutInflater inflater = getLayoutInflater(); /*View inflate (int resource, ViewGroup root) resource为布局文件名,root为view的父容器,可以为null */ View layout = inflater.inflate(R.layout.custom_dialog, null);
/*提取菜单布局文件options_menu*/ @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater=getMenuInflater(); inflater.inflate(R.menu.options_menu, menu); return true; } /*设置菜单选中事件*/ @Override public boolean onOptionsItemSelected(MenuItem item) { switch(item.getItemId()){ case R.id.menu_add:break; case R.id.menu_wallpaper:break; case R.id.menu_search:break; case R.id.menu_setting:break; } return super.onOptionsItemSelected(item); }
获得LayoutInflater的方法有:
//getLayoutInflater是Activity自带方法 LayoutInflater inflater = getLayoutInflater(); LayoutInflater inflater=(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); LayoutInflater inflater=LayoutInflater.from(context); /*context为Context实例,通过活动Activity.this获得*/
具体使用参考http://blog.csdn.net/Android_Tutor/archive/2010/04/21/5513869.aspx