Articles of searchview

显示ActionBarSherlock SearchView总是展开

我需要显示SearchView总是扩展和一个更多的button,在ActionBar中给予用户快速访问searchstringsearch活动。 我有我的活动菜单布局: <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/action_search" android:title="@string/action_search" android:icon="@drawable/ic_action_search" android:showAsAction="always" android:actionViewClass="com.actionbarsherlock.widget.SearchView"/> <item android:id="@+id/action_configure" android:title="@string/action_configure" android:icon="@android:drawable/ic_menu_preferences" android:showAsAction="always" /> </menu> 而在search活动类我configurationActionBar如下: @Override public boolean onCreateOptionsMenu(Menu menu) { getSupportMenuInflater().inflate(R.menu.search, menu); SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); SearchView searchView = (SearchView)menu.findItem(R.id.action_search).getActionView(); searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); searchView.setIconifiedByDefault(false); searchView.setSubmitButtonEnabled(false); return true; } 问题是,如果我做searchView.setIconifiedByDefault(false); 我看到这张照片: 你可以注意到没有第二个菜单项。 在这里,如果我设置了android:showAsAction =“always | collapseActionView”,默认情况下会崩溃,但现在我可以看到第二个项目: 在上面的图片我已经按下search图标 有两个问题我不明白: 我如何总是显示两个元素:扩展search视图和configuration操作的图标? 我如何摆脱这个丑陋的第二个search图标?

按回车键时search活动未启动

search活动在按下Enter键时不会被启动。search视图在操作栏上很好地显示。 但是,当我inputsearch查询,然后按回车 AndroidManifest.xml中 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.punit.rateit" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="11" android:targetSdkVersion="17" /> <uses-permission android:name="android.permission.INTERNET"/> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.punit.rateit.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:theme="@style/Theme.AppCompat.Light" android:name=".SearchPageActivity"> <meta-data android:name="android.app.default_searchable" android:value=".SearchResultsActivity" /> <intent-filter> <action android:name="android.intent.action.SearchPage" /> </intent-filter> </activity> <activity android:name="com.punit.rateit.SearchResultsActivity" android:launchMode="singleTop" > <intent-filter> […]

Android的 – 防止在SearchView的build议文字截断?

出现在我的SearchView下面的默认ListView的build议包含被截断的文本。 我希望文本可以全部显示(如果需要,可以多行显示)。 我已经想出了两种可能的方法来解决这个问题,但没有在网上find的例子,我希望有人在这里可以帮助… 方法#1 / Q1:如何直接访问和修改包含SUGGEST_COLUMN_TEXT_1和SUGGEST_COLUMN_TEXT_1文本的TextView的外观? 方法#2 / Q2:或者,SearchView有一个setSuggestionsAdapter(CursorAdapter adapter)方法,它看起来可能比方法1更适合(更多?)。 虽然我已经阅读了CursorAdapters,并已经在我的应用程序中实现了一个,但我不知道如何configuration一个SearchView(特别是在访问光标方面),所以任何人都可以帮助我一些一般的指导或者一个骨架的例子? 以下是我的SearchViewFragment类的现有代码: public class SearchViewFragment extends Fragment { public SearchViewFragment() { } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment View fragmentView = inflater.inflate(R.layout.fragment_search_view, container, false); // Use […]

如何保持在ActionBar的右侧扩展SearchView(使用自定义图标时)?

我的问题是密切相关的SearchView错误的alignment和在ActionBar中展开时的SearchView位置,但在那里发布的答案不起作用。 所以,我在Action Bar中使用了一个SearchView : <item android:id="@+id/action_search" android:icon="@drawable/navi_search" android:title="@string/action_search" android:showAsAction="ifRoom|collapseActionView" android:actionViewClass="android.widget.SearchView" /> 它默认看起来像这样(右上angular,溢出菜单旁边): 问题是,当展开时, 我希望SearchView保持在右侧 ,而是移动到主页button(应用程序图标)旁边的左侧边缘。 我试着改变showAsAction这两个( 这里build议 ): android:showAsAction="ifRoom" android:showAsAction="always" …这样做可以在展开时修复alignment方式,但是在折叠状态下自定义图标会丢失 : 此外,菜单<item>上的诸如android:layout_alignParentRight="true"和android:layout_centerInParent="true"之类的<item>没有任何效果。 有任何想法吗? 我的目标是Android 4.0及以上版本: <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" />

使用SearchviewsearchRecyclerView

我想通过RecyclerView进行search,我有List<BaseOfCards> (BaseOfCards是我的getter&setter类)我的RecyclerViewAdapter : public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.MyViewHolder> { private LayoutInflater inflater; private List<BaseOfCards> items; //private int itemLayout; //String cardvalue; private Activity mActivity; public RecyclerViewAdapter(Activity mActivity, Context context, List<BaseOfCards> items) { this.mActivity = mActivity; inflater = LayoutInflater.from(context); this.items = items; //this.itemLayout = itemLayout; } @Override public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = […]

Android – 带有自动完成function的操作栏内的searchview

我想build立一个有sherlock动作栏和一个search视图的应用程序。 不过,我希望这个searchview具有autocompleteTextView所具有的自动完成function。 是否有任何直接执行使用searchview单独做? 或者我应该使用操作栏内的autocompleteTextView来做到这一点? 我在那里find了几个post,但没有一个帮助我。 这些post只谈论创build一个autocompleteTextView,但我希望search视图具有此function。 任何想法如何做?

呈现问题无法parsingresource @ id / search_edit_frame

呈现问题无法parsingresource @ id / search_edit_frame 这是我在我的XML文件中得到的渲染错误。 我认为这与我的support.v7.SearchView下面是我的XML: <RelativeLayout android:id="@+id/layout_ricerca" android:layout_width="match_parent" android:layout_height="50dp" android:background="@drawable/search_border_backgroud" android:layout_marginStart="10dp" android:layout_marginEnd="10dp" android:layout_marginTop="20dp"> <android.support.v7.widget.SearchView android:id="@+id/testo_ricerca" android:layout_width="wrap_content" android:layout_height="wrap_content" android:queryHint="@string/search_hint" android:textSize="25sp" android:layout_marginStart="5dp" android:iconifiedByDefault="false"/> <ImageButton android:id="@+id/tasto_ricerca" android:background="@color/trans" android:layout_marginTop="2dp" android:layout_width="45dp" android:layout_height="match_parent" android:layout_marginEnd="3dp" android:scaleType="centerInside" android:layout_alignParentEnd="true" android:src="@drawable/tasto_ricerca"/> </RelativeLayout> 当我将<android.support.v7.widget.SearchView更改为<SearchView ,错误消失,但对我来说这不是一个好的解决scheme,因为我必须将所有的java代码更改为使用SearchView而不是android.support.v7.widget.SearchView 。 有谁知道如何解决这个问题? 为什么会发生? 我不认为我的XML有什么问题。 编辑: 添加了错误的屏幕截图

从SearchView开始新的活动

我有2个活动:第一个有一个search视图的操作栏,第二个应该显示search查询的结果。 androidmanifest: <activity android:name=".SearchActivity" … android:launchMode="singleTop"> <meta-data android:name="android.app.searchable" android:resource="@xml/searchable" /> … </activity> <activity android:name=".ResultsActivity" … <intent-filter> <action android:name="android.intent.action.SEARCH" /> </intent-filter> </activity> searchable.xml <searchable xmlns:android="http://schemas.android.com/apk/res/android" android:label="@string/app_name" android:hint="@string/enter_a_word" /> SearchActivity …. @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_noun_list, menu); // Associate searchable […]

Android – SearchView在工具栏中不展开

我试图在我的工具栏添加一个SearchView,我已经添加了图标,但是当我按下它时,它不会扩展。 代码如下: main_menu.xml <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context="com.app.try.MainActivity"> <item android:id="@+id/search" android:title="@string/search" android:icon="@drawable/abc_ic_search_api_mtrl_alpha" app:showAsAction="always" android:actionViewClass="android.support.v7.widget.SearchView"/> </menu> MainActivity.java @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater=getMenuInflater(); inflater.inflate(R.menu.menu_main,menu); MenuItem searchItem = menu.findItem(R.id.search); SearchManager searchManager= (SearchManager)getSystemService(Context.SEARCH_SERVICE); SearchView searchView=null; if (searchItem!=null) { Log.d("createOptionMenu","search item not null"); searchView = (SearchView) searchItem.getActionView(); } if (searchView!=null) { Log.d("createOptionMenu","search view not null"); searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); }else{ […]

SearchViewbuild议不适用于一个字符

我的SearchViewbuild议存在问题,当我在SearchView写入一个字符时,build议不会出现。 但是,当我在我的SearchView的EditText中写入两个字符时,build议就会到来。 所以我想我的build议已经来了,当我在我的SearchView的EditText写一个字符,我能做什么? 我的代码从MainActivity: private SearchView mSearchView; private SimpleCursorAdapter mAdapter; private ArrayList<String> mList; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mList = new ArrayList<String>(); mList.add("Test 1"); mList.add("Test 2"); mList.add("Test 3"); mList.add("Test 4"); mList.add("Test 5"); mList.add("Test 6"); mList.add("Test 7"); mList.add("Test 8"); mList.add("Test 9"); mList.add("Test 10"); ListView listView = (ListView) findViewById(android.R.id.list); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, […]