Java SearchView:在Android中按enter键时转到另一个布局

Java SearchView:在Android中按enter键时转到另一个布局,java,android,Java,Android,我试图启动一个查询,从在线数据库中检索数据,但我不明白在本例中,当按下enter键时,如何使用SearchView转到另一个布局。我想它可能有一个clickListener,在设置mobile_navigation.xml后单击它,您可以设置布局,但没有。这是我的密码: Context myContext = this; @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds

我试图启动一个查询,从在线数据库中检索数据,但我不明白在本例中,当按下enter键时,如何使用SearchView转到另一个布局。我想它可能有一个clickListener,在设置mobile_navigation.xml后单击它,您可以设置布局,但没有。这是我的密码:

Context myContext = this;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);

MenuItem searchItem = menu.findItem(R.id.action_search);
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
SearchView searchView = (SearchView) searchItem.getActionView();
searchView.setQueryHint("Insert here the title");

searchView.setOnQueryTextListener(new OnQueryTextListener() {

    @Override
    public boolean onQueryTextChange(String newText) {
        return false;
    }

    @Override
    public boolean onQueryTextSubmit(String query) {
        query = query.replace(' ', '+');
        Log.d("Query", query);
        //Navigation.createNavigateOnClickListener(R.id.action_nav_home_to_searchFragment, null);
        ComponentName cm = new ComponentName(myContext, SearchFragment.class);
        searchView.setSearchableInfo(searchManager.getSearchableInfo(cm));
        return false;
    }

});

return true;
}
您不能在查询文本提交上使用CreateNavigationClickListener,因为已单击enter按钮。 但是您可以使用setOnSearchClickListener而不是setOnQueryTextListener来使用它


你想打开一个新的布局来执行搜索吗?我不明白这个方法。。。当用户使用SearchView选择一个键时,是否要导航到另一个屏幕?也许使用ascii码,我认为enter键是字符中的10值。检查这个答案:您可以在if语句中检查正确的键并从那里转换。@Rahul Agrawal否,我想在布局a中进行搜索,并在按下enter按钮时打开一个新的布局B,因此当我在onQueryTextSubmit上时。
searchView.setOnSearchClickListener(Navigation.createNavigateOnClickListener(R.id.btnLogin, null))