没有针对searchView Android应用的提交按钮

时间:2013-07-08 05:48:05

标签: android button searchview

我在我的Android应用中使用searchview和 我想添加一个用户按下以开始搜索的按钮 。根据我在互联网上阅读的内容,我可以使用setSubmitButtonEnabled来调用提交按钮,而不是在布局文件中放置按钮。这是我的代码:

public void setSubmitButtonEnabled (boolean enabled) {

}

我将setSubmitButtonEnabled放在菜单inflater中,如下所示:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.mylist, menu);

    SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
    searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
    searchView.setIconifiedByDefault(false);

    setSubmitButtonEnabled(true);

    return true;
}

显然我做得不对,因为当我启动我的应用程序时,我在屏幕上看不到任何提交按钮。我的代码中缺少什么或出了什么问题?提交按钮应该出现在键盘上还是屏幕上?谢谢。

2 个答案:

答案 0 :(得分:6)

您需要致电

searchView.setSubmitButtonEnabled(true)

为什么你会创建自己没有身体的版本,并期望它做任何事情?

答案 1 :(得分:0)

为此用途

searchView=findViewById(R.id.search_box);
searchView.setSubmitButtonEnabled(true);

要使用提交按钮图标

app:goIcon="@drawable/ic_arrow_forward_black_24dp"

对于SearchView默认扩展

app:iconifiedByDefault="false"