如何在菜单栏中放置过滤列表的EditText

时间:2013-12-14 20:03:52

标签: android android-layout android-listview

我有一个过滤列表的EditText。当用户开始在列表中键入时,列表将被过滤。但是,此字段显示在列表上方。但是,我想在单击“搜索”图标时在菜单栏中显示它。

以下是屏幕的外观:

enter image description here

以下是点击搜索图标时屏幕的外观

enter image description here

“在此处输入内容”功能可实现,我希望将其移至用户点击搜索图标时显示的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);

1 个答案:

答案 0 :(得分:0)

如果您希望搜索edittext显示在操作栏中,则需要使用搜索视图。检查此链接。 http://www.coderzheaven.com/2012/10/20/actionbar-search-option-options-android/