簡體   English   中英

Android SearchView超過Android啟動器圖標?

[英]Android SearchView over android launcher icon?

搜索視圖(點擊/單擊后)是否可以通過android啟動器圖標展開,例如通過應用程序標題名稱展開?

也許,有沒有辦法將我的標題更改為帶有一些自定義字體的啟動器圖標(如sreenshot上的圖標)?

截圖: 在此處輸入圖片說明

在我的onCreateOptionsMenu()內部使用此代碼有效:

    SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
    searchView.setMaxWidth(5000);
    searchView.setOnSearchClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            ActionBar actionBar = getActionBar();
            if (actionBar != null)
                actionBar.setDisplayShowHomeEnabled(false);
        }
    });
    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override
        public boolean onClose() {
            ActionBar actionBar = getActionBar();
            if (actionBar != null)
                actionBar.setDisplayShowHomeEnabled(true);
            return false;
        }
    });

注意:

對我而言,默認情況下,主頁圖標未隱藏為@MattT。 建議,因此在打開搜索時將其手動隱藏,而在關閉搜索時將其再次顯示。 還要注意, getActionBar()需要API 14+。

如果您有興趣,請在使用searchView之前為我的自定義布局充氣:

getMenuInflater().inflate(R.menu.actionbar_items, menu);

布局( menu / actionbar_items.xml )是這樣的:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/action_search"
          android:icon="@drawable/ic_action_search"
          android:title="@string/action_search"
          android:actionViewClass="android.widget.SearchView"
          android:showAsAction="always"/>

    <!-- Settings, should always be in the overflow -->
    <item android:id="@+id/action_settings"
          android:title="@string/action_settings"
          android:showAsAction="never" />
</menu>

這是我過去用來創建這種搜索視圖類型的示例。 http://www.edumobile.org/android/android-development/action-bar-search-view/

除非您專門設置了android:logo屬性,否則操作欄默認情況下也應帶有啟動器圖標。 您還可以使用動作欄上的setLogo()方法以編程方式對此進行修改。

暫無
暫無

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

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