【发布时间】:2014-09-28 07:46:53
【问题描述】:
由于我是 Android 编程新手,我遇到了另一个我不明白的小事。为什么下面的 onCreateOptionsMenu 方法返回 super.onCreateOptionsMenu 而不是仅仅调用 super.onCreateOptionsMenu(就像在 onCreate 方法中所做的那样)?
(来自Android tutorial。)
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu items for use in the action bar
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main_activity_actions, menu);
return super.onCreateOptionsMenu(menu);
}
(我在 StackOverflow 上没有发现重复的问题。我可能在问一个愚蠢的问题,或者我只是不擅长搜索。)
【问题讨论】:
-
hmmm 调用超类的 onCreateOptionsMenu 但最好返回
did_i_create_menu_in_derived_class || super.onCreateOptionsMenu(menu),在此示例中始终为true...来自文档Returns: You must return true for the menu to be displayed; if you return false it will not be shown. -
它允许超类实现执行和。如果您扩展的 Fragment 或 Activity 已经有一些您希望包含在子类实现中的基本菜单项,这将非常有用。
-
因为它必须返回一些东西。因为它是一个布尔方法等等。
标签: java android return super oncreateoptionsmenu