【问题标题】:Start Activity with SearchView open在 SearchView 打开的情况下启动 Activity
【发布时间】:2013-03-02 08:40:59
【问题描述】:

如何在打开文本字段的情况下使用 SearchView 启动活动。 通过这种方式,我无需点击望远镜就可以进行搜索。 我正在使用 Sherlock 操作栏。

这是我的代码:

   @Override
    public boolean onCreateOptionsMenu(Menu menu) {

     final SearchView searchView = new SearchView(getSupportActionBar().getThemedContext());
        searchView.setQueryHint("Cerca domande");

        searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {

            @Override
            public boolean onQueryTextSubmit(String query) {
                if (query.length() != 0) {

                    // handle search here
                    return true;
                }
                return false;
            }

            @Override
            public boolean onQueryTextChange(String newText) {

                 if (newText.length()>=3) {
                     new PostTask().execute(newText);   

                     Util.setSharedPreferences(SearchActivity.this, "lastsearch", newText);
                 }
                return false;
            }
        });

        menu.add("Search")
            .setIcon(ic_search_inverse)
            .setActionView(searchView)
            .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);


        listsearch.setOnItemClickListener(this);

     return true;
    }

谢谢。

【问题讨论】:

    标签: android searchview


    【解决方案1】:

    你可以试试这个:

    mSearchView.setIconifiedByDefault(false);
    

    【讨论】:

    • 这没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以在任何帖子上comment
    • 看起来是一个有效的建议,但如果你不是真的在问问题,你应该把它写成答案。或者,如果您需要澄清,请将其作为评论发布。
    【解决方案2】:

    试过了吗?

    searchMenu.expandActionView();
    

    OnCreateOptionsMenu()

    menu.add("Search")
                .setIcon(ic_search_inverse)
                .setActionView(searchView)
                .expandActionView();
                .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
    

    您可以添加焦点,打开软键盘。因此,一切都已准备好供用户输入和搜索。

    但这不是标准行为。

    【讨论】:

    • 我正在调查您的答案@Archie.bpgc 并搜索expandActionView()。无论如何,我的代码中没有 searchMenu 对象。谢谢
    • :| searchMenu 我的意思是你添加到菜单中的搜索菜单项
    • 在 searchMenu 上调用 expandActionView() 对我不起作用。但是 ActionView 上的 searchView.setIconified(false) 默认打开了文本输入。
    猜你喜欢
    • 2016-07-18
    • 1970-01-01
    • 1970-01-01
    • 2016-12-05
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 2015-12-11
    • 1970-01-01
    相关资源
    最近更新 更多