Articles of android searchmanager

多选择可搜索ListView

好的我有一个多选ListView工作正常。 我检查联系人的框(保存在String []中)并可以返回值。 因为有些人有很多联系人,我想创建一个类似于Android手机书库存的搜索栏。 我创建了一个EditText并将其对齐在我的列表上方。 我在StackOverflow上find了过滤代码,它运行得非常好。 我的问题: 当您过滤某些人的名字,并选择名称时,当您从EditText退格或继续键入时,不会保存您选择的名称的正确位置。 例如,如果我开始键入“Adam”并进入“Ada”并选择它,如果我退格键入“Carol”,则选择“Ada”所处的位置。 它收集了“亚当”在点击时所处的位置(比方说2),当列表恢复时,检查位置(2),即使亚当不在那里。 我需要一种方法来收集名称..然后当再次恢复或搜索列表时,将检查NAME Adam,而不是之前位置的Adam亚当。 除了创建大量数组之外,我绝对没有任何想法,并且可以真正使用一些帮助。 下面是我正在使用的一些代码: @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.contacts_list); myListView = (ListView)findViewById(android.R.id.list); search_EditText = (EditText) findViewById(R.id.search_EditText); search_EditText.addTextChangedListener(filterTextWatcher); adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_multiple_choice, ContactsList); setListAdapter(adapter); myListView.setItemsCanFocus(false); getListView().setChoiceMode(2); myListView.setTextFilterEnabled(true); myListView.setFastScrollEnabled(true); myListView.invalidate(); } private TextWatcher filterTextWatcher = new TextWatcher() { public void afterTextChanged(Editable s) { […]

动态设置搜索提示

有谁知道如何动态设置android搜索对话框提示? T尝试做类似的事情: 某处: @Override public boolean onSearchRequested() { Bundle appSearchData = new Bundle(); appSearchData.putString(“SomeSpecificParam”, SomeClass.class.getName()); startSearch(“”, false, appSearchData, false); EditText text = (EditText )findViewById(R.id.search_dialog_text); text.setHint(“Search something else”); return true; } 但是文本等于null。 所以期待你的建议。 谢谢。

什么时候需要在Android小部件或应用程序中使用singleTop launchMode?

我被一个小部件烧毁了。 我可以看到问题的原因,但我无法确定原因或解决方案。 我的小部件发出了一个搜索(SearchManager),活动启动了一个搜索对话框,但当它回调到我的小部件时,它创建了另一个对小部件的引用(即,thread-id是相同的,但是widget-id从65变为0)。 这让我相信创建了一个新实例,并在文档中搜索了适用于该问题的设置。 最后,我偶然发现了android:launchMode=”singleTop” ,一旦我在AndroidManifest中设置它,中提琴! 我的小部件工作。 这花了我两天的调试时间。 还有其他任何情况,或者我的问题是否有更技术上更正确的答案?

SearchInfo总是空出来

我在操作栏中设置搜索视图时遇到问题。 我跟着开发者网站,但它不起作用。 我觉得我错过了什么。 当我运行我的代码时,它总是输出“无法获取可搜索的信息”(MainActivity.setupSearchView())。 MainActivity.java // package… // imports… public class MainActivity extends Activity { private static String tag = “Main Activity”; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater mi = getMenuInflater(); mi.inflate(R.menu.search_view, menu); setupSearchView(menu); return true; } private void setupSearchView(Menu menu) { SearchManager sm = […]

Android Actionbar Search小部件实现在ListFragment中

我目前的应用程序设置在左侧是DetailsFragment ,右侧是DetailsFragment (类似于下面平板电脑上的布局)。 在操作栏上,我有一个搜索小部件,当提交搜索词时,应该更新列表的内容(在ListFragment中)。 我一直在关注android dev( http://developer.android.com/guide/topics/search/search-dialog.html )上的搜索指南,但我在搜索更新同一活动中的列表时遇到问题。 我已经设法通过在提交搜索词时调用新活动来获得某种forms的实现,但是这使得后退按钮表现得很奇怪(即,您按下后退到前一个活动,搜索小部件仍然显示搜索词)。 我已将意图行添加到清单中,如下所示 是否可以让搜索小部件更新当前活动的列表?

androidsearch传递包

你好我使用的是Android 3.0的search部件 (不是search模式),问题是我需要传递一些参数,随着search词。 Android不会调用任何这些 searchManager.setOnDismissListener( new OnDismissListener() { @Override public void onDismiss() { // TODO Auto-generated method stub Log.v(MyApp.TAG, "on dismiss search"); } }); searchManager.setOnCancelListener( new OnCancelListener() { @Override public void onCancel() { // TODO Auto-generated method stub Log.v(MyApp.TAG, "on dismiss cancel"); } }); @Override public boolean onSearchRequested() { Bundle appData = new Bundle(); appData.putLong("listino_id", […]

Android的searchview从networking的build议

我在操作栏中有一个SearchView ,我想从服务中获取build议。 我已经看到了Android Samples Searchable Dictionary中的Samples Searchable Dictionary 。 但它正在从本地数据库加载结果。 我明白了,有必要使用Content Provider 。 但我想知道什么时候从Web服务获取结果。 我的意思是什么时候打networking电话。 请任何人都可以帮忙。

searchbuild议使用SUGGEST_COLUMN_ICON_1的url

我有一个SearchManager设置,在用户input时会显示build议下拉菜单。 结果来自我的服务器(http)。 我想显示每个选项的图标(如果文件实际上存在)。 看看文档,我看到了常量列SUGGEST_COLUMN_ICON_1选项允许这些选项: Column name for suggestions cursor. Optional. If your cursor includes this column, then all suggestions will be provided in a format that includes space for two small icons, one at the left and one at the right of each suggestion. The data in the column must be a resource ID of […]

如何使用默认浏览器在谷歌searchstring

我想实现一个searchfunction,打开默认的浏览器,并search传递的string public void searchOnGoogle(String keywords){ — } 有没有一种方法使用意向filter或我必须自己实现一切?

如果用户按下设备的searchbutton,则在ActionBar中显示SearchWidget

我按照Android API指南中的描述设置了一个SearchWidget。 它在操作栏中正确显示一个放大镜图标,如果点击它,它会在操作栏(具有深色背景的input字段)内启动search小部件。 但是,如果我按下虚拟设备的searchbutton,则会启动另一个search字段:它具有白色背景,不会调用我指定的callback方法。 所以我把这个添加到我的MainActivity类中: public boolean onSearchRequested() { SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView(); searchView.setIconified(!searchView.isIconified()); return false; } search小部件的设置与文档中描述的完全相同: SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView(); searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); searchView.setIconifiedByDefault(false); searchView.setOnQueryTextListener(new CustomSearchQueryTextListener()); 我的searchable.xml: <?xml version="1.0" encoding="utf-8"?> <searchable xmlns:android="http://schemas.android.com/apk/res/android" android:label="@string/app_name"> </searchable> 和AndroidManifest.xml: <activity android:name="MainActivity" android:label="@string/app_name" android:launchMode="singleTask" android:uiOptions="splitActionBarWhenNarrow" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> […]