use*_*552 5 user-interface android actionbarsherlock
我正在使用Actionbar Sherlock.启动时显示的活动应以"搜索模式"开始,以立即开始搜索.为此,我使用以下代码:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
//collapse search
MenuItem searchItem = menu.add(Menu.NONE, R.string.inlineSearch, Menu.NONE, getString(R.string.inlineSearch)).setIcon(R.drawable.menu_search);
searchItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
searchView = new SearchView(this);
searchItem.setActionView(new SearchView(this));
searchItem.expandActionView();
return true;
}
Run Code Online (Sandbox Code Playgroud)
SearchView是Android/Actionbar Sherlock提供的View.
我面临的问题是,无论我做什么,该项目在启动时都不会扩展.我尝试在启动后使用另一个操作栏项调用expandActionView方法,没有任何更改.我实现了自己的View实现了CollapsibleActionView,但是onActionViewExpanded()和onActionViewCollapsed()的方法永远不会被调用.
但是,如果我单击SearchView的折叠按钮,视图将按预期展开.
有谁知道我做错了什么?谢谢你的帮助!
use*_*552 14
在浏览源文档后,我终于找到了自己的答案.
menuItem.expandActionView()仅在MenuItem设置了以下标志时才生效:searchItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
希望能帮助那里的人!
| 归档时间: |
|
| 查看次数: |
3275 次 |
| 最近记录: |