我有一个过滤列表的EditText。当用户开始在列表中键入时,列表将被过滤。但是,此字段显示在列表上方。但是,我想在单击“搜索”图标时在菜单栏中显示它。
以下是屏幕的外观:
以下是点击搜索图标时屏幕的外观
“在此处输入内容”功能可实现,我希望将其移至用户点击搜索图标时显示的EditText
(第二个屏幕截图)
以下是此活动的布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#ffffff">
<EditText
android:id="@+id/EditText01"
style="@style/FormalSingleLineEditText"
android:layout_width="match_parent"
android:hint="@string/sometext" />
<ListView
android:id="@+id/ListView01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:divider="#b5b5b5"
android:dividerHeight="1dp"
android:cacheColorHint="#00000000"/>
</LinearLayout>
对于搜索图标我正在使用ActionbarSherlock:
menu.add("Search")
.setIcon(R.drawable.search)
.setActionView(R.layout.collapsible_edittext)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
答案 0 :(得分:0)
如果您希望搜索edittext显示在操作栏中,则需要使用搜索视图。检查此链接。 http://www.coderzheaven.com/2012/10/20/actionbar-search-option-options-android/