Ada widget untuk ActionBar yang disebut 'SearchView'. Saat tidak digunakan, akan terlihat seperti ini

Dan ketika sedang digunakan, akan terlihat seperti ini:

Nah, masalahnya adalah, saya ingin sekali ketika ActionBar menu pencarian tersebut ketika diklik langsung menampilkan Widget SearcView sekaligus pada posisi in use (sedang digunakan) atau bisa juga dengan kata lain cursor fokus.
Saya sudah mencoba dengan cara seperti ini tapi masih belum berhasil.
SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
searchView.setOnQueryTextListener(this);
searchView.performClick();
searchView.requestFocus();
Berikut setup widget SearchView saya.
<item android:id="@+id/menu_search"
android:title="Search"
android:icon="@drawable/ic_action_search"
android:showAsAction="ifRoom|collapseActionView"
android:actionViewClass="android.widget.SearchView" />
Solusi
Untuk meng-expand SearchView sebagaimana yang Anda maksud (in use atau in focused), maka cukup gunakan cara ini.
searchView.setIconified(false);
Lalu meng-collapse-nya dengan cara seperti ini.
searchView.setIconified(true);
Anda perlu mengubah nilai android: showAsAction
dari ifRoom | collapseActionView
menjadi always
. Atribut SearchView android: iconifiedByDefault
harus true
, yang merupakan nilai default, jika tidak, pengguna tidak bisa menciutkan SearchView setelah diperluas secara terprogram.