【发布时间】:2014-09-06 13:04:25
【问题描述】:
我目前有一个有 4 个页面的应用程序,这些页面是由 pageViewer 使用片段添加的,以便我可以在它们之间滑动。
我想要的是能够从每个页面访问“选项”菜单(默认情况下其中包含“设置”项的菜单),以便我可以专门为一个页面执行命令,例如一个“刷新”项,用于刷新当前页面中的数据。
谁能指出我正确的方向? 谢谢!
【问题讨论】:
我目前有一个有 4 个页面的应用程序,这些页面是由 pageViewer 使用片段添加的,以便我可以在它们之间滑动。
我想要的是能够从每个页面访问“选项”菜单(默认情况下其中包含“设置”项的菜单),以便我可以专门为一个页面执行命令,例如一个“刷新”项,用于刷新当前页面中的数据。
谁能指出我正确的方向? 谢谢!
【问题讨论】:
每个Fragment 都可以声明自己的菜单,该菜单会自动与当前活动的菜单合并。
class YourPage extends Fragment
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// Signal that this fragment has proper actions
setHasOptionsMenu(true);
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater)
{
super.onCreateOptionsMenu(menu, inflater);
// The menu will be added to the action bar
inflater.inflate(R.menu.fragment_page_menu, menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
switch (item.getItemId())
{
case R.id.action_refresh:
{
// Handle the action...
return true;
}
default:
return super.onOptionsItemSelected(item);
}
}
}
【讨论】: