getMenuInflater的工作?

时间:2018-03-07 14:40:36

标签: java android

所以我正在开展一个项目,即基本天气应用。我是android的初学者。

MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.game_menu, menu);

我不知道getMenuInfalter方法在这里有什么用处。我们可以使用inflater对象的inflate方法,因为它是MenuInflater类的方法。

2 个答案:

答案 0 :(得分:3)

是的,如果您不想再次重复使用该实例,则无需使用

所以你可以getMenuInfalter

虽然MenuInflater重新运行getMenuInfalter的实例,该实例用于从预处理的XML创建菜单

  

我不知道getMenuInfalter方法在这里有什么用处。我们可以   使用inflater方法使用inflate方法,因为它是一种方法   MenuInflater类

因为public MenuInflater getMenuInflater() { // Make sure that action views can get an appropriate theme. if (mMenuInflater == null) { initWindowDecorActionBar(); if (mActionBar != null) { mMenuInflater = new MenuInflater(mActionBar.getThemedContext(), this); } else { // initialize instance with context mMenuInflater = new MenuInflater(this); } } return mMenuInflater; } 是对父类中具体方法的调用,它在内部确认适当主题与当前活动的链接,如果没有操作栏,则是,您可以直接自己初始化实例,如图所示在源代码中

apply

答案 1 :(得分:0)

Inflating意味着读取描述布局(或GUI元素)的XML文件并创建与其对应的实际对象,从而使对象在Android应用程序中可见。回答是here。 getMenuInflater是初始化类型,我认为这些名称听起来很明显。