Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在Sherlock Acionbar中搜索编辑文本_Android_Android Edittext_Actionbarsherlock - Fatal编程技术网

Android 在Sherlock Acionbar中搜索编辑文本

Android 在Sherlock Acionbar中搜索编辑文本,android,android-edittext,actionbarsherlock,Android,Android Edittext,Actionbarsherlock,我在sherlock actionbar中的搜索视图有问题,所以我决定改用编辑文本。但是当我想使用编辑文本时,我的应用程序崩溃了(安卓2.3)。我如何在android 2.3版的sherlock活动中使用search edittext或searchview 以下是我的OnCreateOptions菜单功能: public boolean onCreateOptionsMenu(Menu menu) { MenuInflater minflater = getSupportMenuInfl

我在sherlock actionbar中的搜索视图有问题,所以我决定改用编辑文本。但是当我想使用编辑文本时,我的应用程序崩溃了(安卓2.3)。我如何在android 2.3版的sherlock活动中使用search edittext或searchview

以下是我的OnCreateOptions菜单功能:

public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater minflater = getSupportMenuInflater();
    minflater.inflate(R.menu.activity_main, menu);
    View v = (View) menu.findItem(R.id.search).getActionView();
    txtSearch = ( EditText ) v.findViewById(R.id.txt_search);
    txtSearch.setOnEditorActionListener(new OnEditorActionListener() {
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {

            return false;
        }
    });
    return true;
}
这是我的edittext xml源代码:

<EditText 
    android:id="@+id/txt_search"
    android:inputType="text"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"   
    android:cursorVisible="true"
    android:hint="@string/hint"
    android:imeOptions="actionDone"
    android:textColor="@android:color/black"
    android:textCursorDrawable="@android:color/black"     
    />

和我的搜索菜单项:

<item
    android:id="@+id/search"
    android:title="Search"
    android:icon="@android:drawable/ic_menu_search" 
    android:showAsAction="always|collapseActionView"
    android:actionViewClass="@layout/search_layout"
    />

如果有人知道在sherlock活动中使用searchview或在sherlock actionbar中使用edittext进行搜索的方法,请注意。

您应该使用

android:actionLayout="@layout/search_layout"
更多信息请点击此处:

为我工作:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
getSupportMenuInflater().inflate(R.menu.your_menu, menu);

// "0" is the number of menu item search in my example 
menu.getItem(0).setActionView(R.layout.your_layout_search); //your layout with edittext
EditText editSearch = (EditText) menu.getItem(0).getActionView().findViewById(R.id.edit_search);

return super.onCreateOptionsMenu(menu);
}

我没有使用sherlock活动,但我使用Textwatcher用EditText过滤我的列表(有点搜索!),希望能有所帮助。