在片段中向ActionBar添加项
本文关键字:添加 ActionBar 片段 | 更新日期: 2023-09-27 18:27:08
我正试图弄清楚如何通过Fragment
将项目添加到ActionBar
菜单中。我的应用程序的MainActivity
继承了ActionBarActivity
,我希望能够更改ActionBar
上Fragment
当前显示的项目。
public class LoginFragment : BaseFragment
{
//...
public override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetHasOptionsMenu(true);
// this.Activity.MenuInflater.Inflate(Resource.Menu.something, ???);
}
}
从此处复制
1. Remove or comment any onOptionsItemSelected() ,onMenuItemSelected() even onPrepareOptionMenu() and leave in Activity onCreateOptionsMenu() only:
@Override
public boolean onCreateOptionsMenu(Menu menu){
MenuInflater inflater=getMenuInflater();
inflater.inflate(R.layout.menu, menu);
return true;
}
在Fragment类的onCreateView()中,放入:
setHasOptionsMenu(true);
在Fragment类中添加:
@Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { super.onCreateOptionsMenu(menu,inflater); } @Override public boolean onOptionsItemSelected(MenuItem item){ switch(item.getItemId()){ case R.id.action_insert: //doing stuff return true; } return false; }
在Android 4.4 上测试和工作