Articles of searchview

在SearchView AutoCompleteTextView中搜索包含特定字符的文本

我正在尝试修改一个使用ActionBarSherlock SearchView$SearchAutoComplete 开源字典项目 。 例如,我有一个名为“Google Play”的条目。 当我输入“Google”时, SearchView能够返回建议,但如果我搜索“Play”则不是这种情况。 如何使SearchView能够搜索包含文本的条目? public boolean onQueryTextChange(String newText) { if (MdxDictBase.isMdxCmd(newText)){ currentEntry.setEntryNo(DictEntry.kSystemCmdEntryNo); } if (!skipUpdateEntryList) { dict.locateFirst(newText, true, true, true, false, currentEntry); syncHeadwordList(); } skipUpdateEntryList = false; return true; //return false if want the system provide a suggestion list? } 完整的代码可以在这里find 。 这是我从这里find的Cursor查询。 public Cursor query(Uri uri, String[] projection, String […]

在android中使用viewpager的多个片段的SearchView

我想用viewPager中存在的多个片段实现SearchView。 所有fragemnts都包含列表,我想过滤这些列表并创建一个新的ListView,它根据它所属的片段对结果进行分类。 但是我的searchView没有使用一个片段。 这是我的主要活动: package com.codeon.directory; import android.app.SearchManager; import android.content.Context; import android.os.Bundle; import android.support.design.widget.TabLayout; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.SearchView; import android.support.v7.widget.Toolbar; import android.view.Menu; import android.view.MenuInflater; import android.view.View; import com.codeon.directory.fragments.FiveFragment; import com.codeon.directory.fragments.FourFragment; import com.codeon.directory.fragments.OneFragment; import com.codeon.directory.fragments.SixFragment; import com.codeon.directory.fragments.ThreeFragment; import com.codeon.directory.fragments.TwoFragment; import java.util.ArrayList; import java.util.List; /** * Created by Nikhil […]

始终在SearchView中显示麦克风图标

在Android Searchable SearchView中,清除(X)图标会在输入时替换麦克风图标。 我想在打字时同时显示清晰和麦克风图标。 有没有办法做到这一点? 这是我的代码: RES / XML / searchable.xml RES /布局/ menu_search.xml xmlns:app=”http://schemas.android.com/apk/res-auto” MainActivity.java @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_search, menu); MenuItem searchItem = menu.findItem(R.id.search); searchView = (SearchView) MenuItemCompat.getActionView(searchItem); searchView.setOnQueryTextListener(this); SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); searchView.setSearchableInfo(searchManager.getSearchableInfo( getComponentName() )); searchView.setIconifiedByDefault(false); searchView.setQueryRefinementEnabled(true); return true; } AndroidManifest.xml中 提前致谢。

menuitem中的OnActionExpandListener无法正常工作。 怎么解决?

我正在开发一个从API Level 14开始工作的Android应用程序。 我的菜单文件中有一个项目 我想知道这个搜索视图的扩展和崩溃,我尝试了这个代码,但它没有用 @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity_search, menu); MenuItem mSearchItem = menu.findItem(R.id.menu_search); mSearchItem.setOnActionExpandListener( new OnActionExpandListener() { @Override public boolean onMenuItemActionExpand(MenuItem item) { // TODO Auto-generated method stub Toast.makeText(MainActivity.this, “onMenuItemActionExpand”, 1) .show(); return true; } @Override […]

更改SearchView按钮的背景颜色和查询

出于某种原因,我的searchview有一个白色背景而不是透明,我似乎无法摆脱它。 我正在使用AppCompat主题。 我手动使用ToolBar作为我的ActionBar 。 menu.xml文件 @color/app_background @null @android:color/transparent true true true true false @style/MySearchViewStyle @android:color/transparent @android:color/transparent

使用支持库v21设置SearchView小部件的样式

我正在尝试使用新的AppCompat v21设置SearchView小部件的样式,但我遇到了一些问题。 无论我在“suggestionRowLayout”属性上设置什么布局,它都什么都不做。 SearchView的建议下拉列表保持不变。 我遇到的其他问题是当“强调颜色”与“原色”颜色相同时,在搜索视图中无法区分插入符号的位置。 您知道如何更改SearchView中的重音颜色仅适用于那里吗? 我发现Play Music有同样的问题。 我正在关注Android开发者博客的指南: http://android-developers.blogspot.com.es/2014/10/appcompat-v21-material-design-for-pre.html

按Enter键时未启动搜索活动

按Enter键时搜索活动未启动。搜索视图在操作栏上很好地显示。 但是当我输入搜索查询并按回车键时 AndroidManifest.xml中 这是Menu.xml 显示操作栏的活动。 public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu,menu); SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView(); searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); searchView.setIconifiedByDefault(false); searchView.setSubmitButtonEnabled (true); return super.onCreateOptionsMenu(menu); } SearchResult活动应该是按下搜索提交按钮时调用的活动 public class SearchResultsActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d(“search”, “search triggered”); setContentView(R.layout.searchpage); handleIntent(getIntent()); } @Override protected void […]

如何在android中使用SearchView小部件时突出显示已过滤的文本

我在我的应用程序中实现了SearchView Widget。 它的工作正常。 现在我需要做的是,每当我在我的SearchView Bar输入一个单词时,过滤后的结果应该会突出显示搜索到的单词。 喜欢: 我正在使用此SearchView小部件: @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { inflater.inflate(R.menu.myMenu , menu); MenuItem searchItem = menu.findItem(R.id.action_search); SearchView sv = new SearchView(getActivity()); // Changing the color of Searchview widget text field to white. int searchSrcTextId = getResources().getIdentifier(“android:id/search_src_text”, null, null); EditText searchEditText = (EditText) sv.findViewById(searchSrcTextId); searchEditText.setTextColor(Color.WHITE); sv.setOnQueryTextListener(this); searchItem.setActionView(sv); super.onCreateOptionsMenu(menu, inflater); }

从另一个活动返回时,SearchView获得焦点并打开键盘

当我从另一个活动返回到主活动时,searchView获得焦点并且键盘打开,我设法通过使用以下命令阻止键盘打开: getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 但这还不够,如果打开并关闭操作栏下拉菜单,键盘会重新出现,因为searchView仍然具有焦点(记住我只关闭了键盘)。 我试图获得对searchView的引用并使其失去焦点,但这并没有奏效。 所以基本上,我只是希望searchView永远不会有焦点或提示键盘打开,除非实际触摸了searchView文本区域。

如何从searchview获取输入到textview

有没有其他方法来获取searchview的输入并将其放入textview? 似乎getText()和setText()方法不适用于searchview。 要么 有没有办法将输入从EditText传输到Searchview? 请帮助我查找有关上述问题的必要资源/代码/方法。 谢谢。 这是我的代码: public boolean onQueryTextChange(String newText) { // TODO Auto-generated method stub showResults(newText); return false; } @Override public boolean onQueryTextSubmit(String query) { // TODO Auto-generated method stub tvInput = (TextView) findViewById (R.id.tvInput); showResults(query); // searchView.getQuery().toString(); tvInput.setText(searchView.getQuery().toString()); return false; } 我也是以其他方式做到的。 这里: tvInput = (TextView) findViewById (R.id.tvInput); tvInput.setText(searchView.getQuery());