Mac*_*ver 10 xml android android-actionbar android-search
每当我在搜索视图中输入时,关闭按钮(X)似乎由于某种原因而被禁用,而不是以白色显示.如何解决此错误以使其显示为白色?
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.menu_search_list, menu);
MenuItem item = menu.findItem(R.id.action_search);
SearchView searchView = (SearchView) MenuItemCompat.getActionView(item);
searchView.setOnQueryTextListener(this);
searchView.setQueryHint(getResources().getString(R.string.station_search_hint));
}
Run Code Online (Sandbox Code Playgroud)
menu_search_list.xml
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
<item android:id="@+id/action_search"
android:icon="@drawable/ic_action_search_light"
android:title="@string/action_search"
android:orderInCategory="100"
app:showAsAction="always"
app:actionViewClass="android.support.v7.widget.SearchView"/>
</menu>
Run Code Online (Sandbox Code Playgroud)
你的代码看起来不错。尝试以下代码:
final MenuItem search = menu.findItem(R.id.action_search);
if (search != null) {
SearchView searchView = (SearchView) MenuItemCompat.getActionView(search);
search.expandActionView();
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
// Your Logic
return false;
}
});
MenuItemCompat.setOnActionExpandListener(search, new MenuItemCompat.OnActionExpandListener() {
@Override
public boolean onMenuItemActionExpand(MenuItem item) {
return false;
}
@Override
public boolean onMenuItemActionCollapse(MenuItem item) {
finish();
return true;
}
});
Run Code Online (Sandbox Code Playgroud)
另一项调整:尝试使用上面相同的代码,onPrepareOptionsMenu并在顶部添加以下额外行
menu.clear();
getMenuInflater().inflate(R.menu.menu_search_list, menu);
...
// Above code
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3864 次 |
| 最近记录: |