簡體   English   中英

實施searchview自定義工具欄

[英]Implementing searchview custom toolbar

我有一個由我自己創建的工具欄,一個自定義工具欄,並且想要在上方放置一個searchview,因此每次單擊圖標時它都會替換我的工具欄。

我的自定義工具欄:

<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/my_toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/emerald">
    <ImageView
        android:id="@+id/arrow_left"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="left"
        android:layout_weight="0"
        android:src="@drawable/ic_002_keyboard_left_arrow_button"
        android:onClick="previousActivity"
        android:tint="@color/white"/>
    <com.example.afcosta.inesctec.pt.android.Helpers.NexusBoldTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="@color/white"
        android:layout_gravity="left"
        android:layout_marginLeft="25dp"
        android:id="@+id/toolbar_title"
        android:textSize="@dimen/toolbar_title" />
    <ImageView
        android:id="@+id/user_ic"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:layout_weight="0"
        android:src="@drawable/ic_user"
        android:onClick="userProfile"
        android:layout_marginRight="25dp"
        android:tint="@color/white"/>
    <ImageView
        android:id="@+id/user_ic2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:layout_weight="0"
        android:src="@drawable/ic_search_black_24dp"
        android:tintMode="@color/white"
        android:onClick="userProfile"
        android:layout_marginRight="25dp"
        android:tint="@color/white"/>



</android.support.v7.widget.Toolbar>

我將其包括在其他活動中,例如:

   <include
        layout="@layout/custom_toolbar"
        android:id="@+id/my_toolbar"
        tools:layout_constraintTop_creator="1"
        tools:layout_constraintLeft_creator="1"
        app:layout_constraintTop_toTopOf="parent"
        tools:layout_editor_absoluteX="0dp" />

現在我想在此自定義工具欄上使用searchview,但是我什至無法添加它,有幫助嗎?

創建帶有項目的菜單

<item
        android:id="@+id/action_search"
        android:icon="@android:drawable/ic_menu_search"
        app:showAsAction="always"
        app:actionViewClass="android.support.v7.widget.SearchView"
        android:title="Search"/>

在您的活動中

@Override
    public boolean onCreateOptionsMenu( Menu menu) {
        getMenuInflater().inflate( R.menu.menu_main, menu);

        MenuItem search = menu.findItem( R.id.action_search);
        final SearchView searchView = (SearchView) search.getActionView();
        searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
            @Override
            public boolean onQueryTextSubmit(String query) {
                //Do your action
                return true;
            }

            @Override
            public boolean onQueryTextChange(String newText) {

                return false;
            }
        });

        return true;
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM