2013-04-10 138 views
1

我一直在試圖找到答案,但也許我沒有正確地要求谷歌所以這裏它去了:我有我的Android應用程序的頂部菜單項作爲搜索輸入等搜索視圖。我點擊放大鏡,然後文本框變爲可編輯的搜索字詞。我怎樣才能跳過這一步,並做到這一點,當我的活動的onCreate()方法,搜索字段自動獲取焦點,而無需點擊放大鏡圖標?Android SearchBar沒有點擊按鈕

這裏是我的代碼:

MenuInflater inflater = new MenuInflater(SearchMedicineActivity.this); 
    inflater.inflate(R.menu.search_view, menu); 
    MenuItem searchItem = menu.findItem(R.id.action_search); 
    searchItem.setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_IF_ROOM| MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW); 
    mSearchView = (SearchView) searchItem.getActionView(); 
    mSearchView.setOnQueryTextListener(this); 
    mSearchView.setIconifiedByDefault(false); 
    return true; 

回答

0

http://developer.android.com/reference/android/widget/SearchView.html

當搜索查看是在動作條,作爲一個 可摺疊菜單項的動作視圖中使用,需要將其設置爲圖標化默認 使用setIconifiedByDefault(true)。這是默認設置,所以沒有任何 需要完成。

如果您希望搜索字段始終可見,請致電 setIconifiedByDefault(false)

+0

其實,我以前試過,但沒有奏效。我甚至現在更新我的問題,以反映我所嘗試的。 – marcelorocks 2013-04-10 14:00:26

1

public boolean onPrepareOptionsMenu(Menu menu)裏面調用setIconifiedByDefault(false)應該得到你想要的結果。如果您希望鍵盤可見,請嘗試撥打requestFocus()