android搜索效果
① Android如何實現百度搜索欄的下拉提示效果啊求組 急!
這是一種類似搜索引擎索引的提示方式,要麼自己做一套,要麼使用共用的,簡單一點的話,在資料庫用模糊搜索也可以~~
② 怎麼使用android軟體的搜索功能
當你需要在你的應用程序中提供搜索服務時,通過使用Android的搜索框架,應用程序將顯示一個自定義搜索對話框來處理用戶的搜索請求。通過一個簡單的搜索按鈕或從您的應用程序中調用API,搜索對話框就會顯示在屏幕的頂部,並會自動顯示應用程序圖標。
本文將教你如何為你的應用程序提供一個自定義搜索對話框。這樣做,給您的用戶提供一個標准化的搜索體驗,並能增加如語音搜索和搜索建議等功能。
基礎知識
Android的搜索框架將代您管理的搜索對話框,您不需要自己去開發一個搜索框,不需要擔心要把搜索框放什麼位置,也不需要擔心搜索框影響您當前的界面。所有的這些工作都由SearchManager類來為您處理(以下簡稱「搜索管理器」),它管理的Android搜索對話框的整個生命周期,並執行您的應用程序將發送的搜索請求,返回相應的搜索關鍵字。
當用戶執行一個搜索,搜索管理器將使用一個專門的Intent把搜索查詢的關鍵字傳給您在配置文件中配置的處理搜索結果的Activity。從本質上講,所有你需要的就是一個Activity來接收Intent,然後執行搜索,並給出結果。具體來說,你需要的做的事就包括以下內容:
一個搜索配置
我們用個XML配置文件來對搜索對話框進行配置,包括一些功能的配置,如文本框,設置語音搜索和搜索建議中顯示的提示文字等。
一個用來處理搜索請求的Activity
這個Activity用來接收搜索查詢的內容,然後搜索您的數據並顯示搜索結果。
一種用戶執行搜索的途徑
默認情況下,一旦你配置了一個可搜索的Activity,設備搜索鍵(如果有)將調用搜索對話框。然而,你應該始終提供另一種手段,讓用戶可以調用搜索對話框,如在選項菜單中的搜索按鈕或其他用戶界面上的按鈕,因為不是所有的設備提供一個專門的搜索鍵。
創建一個搜索對話框配置文件
搜索框配置文件是一個用來配置您的應用程序中搜索框的設置的XML文件,這個文件一般命名為searchable.xml,並且必須保存在項目的res/xml/目錄下。
配置文件的根節點必須為,可以有一個或多個屬性。
③ android開發中自定義搜索框怎麼實現百度搜索的功能並接受搜索結果listview顯示出來
請使用AutoCompleteTextView這個控制項,這個空間是textView的補充,內置listView功能,自動填充搜索結果
④ Android搜索框中文字輪播控制項TextBanner
閑話不多說,先看效果圖:
依賴: implementation 'com.haowen:textbanner:1.0.4'
1:想要達到輪播效果,兩個View交替出現即可,既然是兩個View那麼就需要一個父容器(TextBanner繼承FrameLayout):
2:間隔性就用Handler的postDelayed來實現就行了,為了防止內存泄漏,這里採用WeakHandler
3:交替出現的動畫(TextBanner只用了一個簡單的Y方向平移動畫,並不支持動畫設置,因為我覺得沒必要花里胡哨的,如果後期有需要,可以考慮提示自定義)
5:數據設置適配器,這里採用Adapter的形式(看方法名應該很好理解,似曾相識):
Github傳送門 biu biu biu ~~~
⑤ android應用中的搜索功能怎麼實現的
在APP應用中啟用搜索
在app應用中,至少要執行如下的三個步驟,才能讓app應用能夠進行檢索。如果要提供搜索建議,還需要執行第4步:
編寫搜索配置的XML文件
編寫搜索的activity類
在Android的manifest.xml文件中,對兩面兩個步驟的工作進行配置。
如果要使用搜索建議,則需要增加一個contentprovider。
配置搜索的XML配置文件
首先看下如何配置搜索的XML配置文件。先命名配置文件名稱為searchable.xml,保存在res/xml文件夾中。然後需要設置搜索框的文本,並且應該增加一個hint的提示文本信息,如下代碼所示:
<searchable xmlns:android="http://schemas.android.com/apk/res/android" android:label="@string/search_label"> android:hint="@string/search_hint" </searchable>
關於搜索配置文件有很多的配置選項,建議參考Android的手冊可以獲得更多:
http://developer.android.com/guide/topics/search/searchable-config.html。
增加搜索的Activity
當用戶進行搜索時,Android調用activity進行搜索,代碼如下:
publicclass SampleSearchActivity extends ListActivity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); handleIntent(getIntent()); }public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); handleIntent(getIntent()); } public void onNewIntent(Intent intent) { setIntent(intent); handleIntent(intent); } public void onListItemClick(ListView l, View v, int position, long id) { // 點每個搜索結果時的處理代碼 } private void handleIntent(Intent intent) { if (Intent.ACTION_SEARCH.equals(intent.getAction())) { String query = intent.getStringExtra(SearchManager.QUERY); doSearch(query); } } private void doSearch(String queryStr) { //執行真正的查詢結果處理 } }
在上面的代碼中,在handleIntent方法中,當按下搜索按鈕,系統就會自動發送Intent,action是Intent.ACTION_SEARCH,然後通過intent.getStringExtra(SearchManager.QUERY);獲得要搜索的字元串。
其中為什麼要包含onNewIntent()方法呢?主要是因為Android的back後退機制。Android會默認把每一個新的activity放到activity棧的頂部。如果用戶點了後退鍵,則會關閉棧頂部的activity。嘗試考慮一種情況,用戶搜索一個內容並且系統列出了結果,如果用戶發現結果不是他所要的,或者希望重新檢索,則會重新點擊搜索按鍵,這樣將會產生一個新的搜索activity的實例,在activity棧中就會有兩個搜索的activity,這是開發者並不期待的,所以,需要將這個搜索的activity聲明為singleTop類型的activity,這樣的話,無論用戶按返回鍵還是盡心個多次的搜索,在acitivty棧中始終保持的是一個搜索activity的實例。因為當activity被設置為singleTop的載入模式時,如果堆棧的頂部已經存在了該Activity,那麼,它便不會重新創建,而是調用onNewIntent。如果,該Activity存在,但不是在頂部,那麼該Activity依然要重新創建。
mainifest配置文件
接下來,需要對manifest配置文件進行配置,必須要對其中進行如下配置:
搜索的activity.
使用搜索的intent
activity啟動模式
searchable.xml中的元數據
更多的定義搜索的元數據
下面是典型的一個搜索的配置
<application android:icon="@drawable/icon" android:label="@string/app_name" android:name=".YourApp" > <meta-data android:name="android.app.default_searchable" android:value=".YourSearchActivity" /> <activity android:label="@string/app_name" android:launchMode="singleTop" android:name=".YourSearchActivity" > <intent-filter > <action android:name="android.intent.action.SEARCH" /> </intent-filter> <intent-filter > <action android:name="android.intent.action.VIEW" /> </intent-filter> <meta-data android:name="android.app.searchable" android:resource="@xml/searchable" /> </activity> </application>
在上面的典型配置中,要注意如下幾點:
1)由於當調用搜索activity時,Android調用的是android.intent.action.SEARCH作為搜索的intent,所以必須在intent-filter中包含android.intent.action.SEARCH。
2)在<meta-data>中,指出了searchable.xml的位置
3)同樣在<meta-data>中,通過:
<meta-data android:name="android.app.default_searchable" android:value=".YourSearchActivity" />
指出了當執行搜索的字元串提交時,將調用哪一個activity去進行處理。
⑥ Android開源實戰:手把手帶你實現一個簡單好用的搜索框(含歷史搜索記錄)
一款 封裝了 歷史搜索記錄功能 & 樣式 的 Android 自定義搜索框
根據場景,梳理出來的功能業務流程圖如下:
根據功能的業務流程圖,得出功能需求如下
下面,將根據功能需求給出特定的技術解決方案
下面將給出詳細的功能邏輯
分析1:EditText_Clear.java
對於含有一鍵清空功能 & 更多自定義樣式的EditText自定義控制項 具體請看我的另外一個簡單 & 好用的開源組件: Android自定義EditText:手把手教你做一款含一鍵刪除&自定義樣式的SuperEditText
分析2:SearchListView.java
分析3: search_layout.xml
分析4:ICallBack.java、bCallBack.java
分析5:SearchView.java
分析1:RccordSQLiteOpenHelper.java
分析2:SearchView.java
不定期分享關於 安卓開發 的干貨,追求 短、平、快 ,但 卻不缺深度 。
⑦ android上如何實現一個搜索效果,搜索框動態展開
使用SearchView。
SearchView顧名思義就是一個搜索視圖,和之前講解的自動匹配的輸入框類似。只不過他有自己特有的監聽器,並且可以實時得到用戶輸入的結果。
還不明白者可去Google一下SearchView,基本上就明白了。在你的menu目錄下編寫一個xxx.xml,如果要收縮的效果的話,需要配置這個屬性:android:showAsAction="collapseActionView"