Android SearchView不允许输入(与TabActivity冲突?)

4
我正在开发一个应用程序,其中使用了嵌入在ActionBar中的SearchView。它在整个应用程序中都可以完美运行,但在一个Activity中却不行。在这个Activity中,我可以点击搜索图标,在操作栏中显示搜索视图,但是一旦我在搜索视图中输入任何内容,我的文本输入就会被忽略(没有文本显示),并且焦点移开了搜索框。
这个活动与我的应用程序中的其他活动的主要区别是,这个活动使用了TabActivity实现了选项卡。我想知道这是否是原因,以及是否有潜在的解决方案。
这是SearchView的代码:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.menu, menu);
    SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
    searchView.setSubmitButtonEnabled(true);
    searchView.setOnQueryTextListener(queryTextListener); 
    searchView.setQueryHint("product search");

    return true;
} 

final SearchView.OnQueryTextListener queryTextListener = new SearchView.OnQueryTextListener() { 
    @Override 
    public boolean onQueryTextChange(String newText) { 
        return true; 
    } 

    @Override 
    public boolean onQueryTextSubmit(String query) { 
        _listControl = new ListControl(_thisProduct,query);
        _listControl.startGetData(); 
        return true; 
    } 
}; 

这是我的选项卡活动设置。选项卡可在不同视图之间进行切换。
 public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.product);


    //set up tabs 
    mTabHost = getTabHost();
    mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("Info").setContent(R.id.productLayout));
    mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Specs").setContent(R.id.specLayout));
    mTabHost.addTab(mTabHost.newTabSpec("tab_test3").setIndicator("Reviews").setContent(R.id.reviewLayout));
    mTabHost.addTab(mTabHost.newTabSpec("tab_test4").setIndicator("Buy").setContent(R.id.textView4));//


    mTabHost.setCurrentTab(0);
    mTabHost.getTabWidget().getChildAt(0).getLayoutParams().height = 40;
    mTabHost.getTabWidget().getChildAt(1).getLayoutParams().height = 40;
    mTabHost.getTabWidget().getChildAt(2).getLayoutParams().height = 40;
    mTabHost.getTabWidget().getChildAt(3).getLayoutParams().height = 40;
1个回答

0

我确信SearchView应该可以与选项卡活动一起使用,我会尽快尝试并告诉你结果。同时,你能否尝试使用ViewPager代替你目前使用的带有片段的选项卡活动,或者作为一个选项ActionBar本身提供了显示选项卡的功能。请告诉我它的效果如何。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接