国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android利用EditText如何實現搜索框詳解

2019-12-12 00:45:06
字體:
來源:轉載
供稿:網友

EditText簡介:

ED(EditText的簡稱)在開發中也是經常使用到的一個控件, 也是一個比較重要的組件,可以說它是用戶跟應用進行數據傳輸的窗口,比如實現一個登陸界面, 需要用戶輸入賬號和密碼,然后我們開發者獲取到用戶輸入的內容,提交給服務區進行判斷再做相應的處理。

引言

新的app中有search的功能需要實現,就是一個輸入框,輸入文字后鍵盤出來搜索字樣,然后點擊搜索進行網絡請求。之前掉坑里了,一直嘗試用searchview來實現,但是自定義樣式上實在是坑,最后發現其實EditText就可以實現,也是醉了。

SearchView的自定義樣式

我還只實現了部分自定義,輸入框那里底部的藍色線條實在不知道怎么清除掉,有大神可以指教一下。

int search_mag_icon_id = sv_search.getContext().getResources().getIdentifier("android:id/search_mag_icon", null, null);ImageView search_mag_icon = (ImageView)sv_search.findViewById(search_mag_icon_id);//獲取搜索圖標search_mag_icon.setImageResource(R.drawable.search_icon);//將圖標的資源換掉即可。

其實就是找到searchView的資源文件,并替換掉就可以了。

同理,close圖標也可以替換,只要修改"android:id/search_mag_icon" 為"android:id/search_close_btn"即可。

文本框的字體顏色大小等: "android:id/search_src_text"

不要問我怎么知道的,searchview源碼里寫的呀。需要注意的是,修改文本框顏色和大小的時候,需要將view cast to textview或者edittext,源碼的配置文件里面這個框就是一個view,強轉一下即可。

EditText實現SearchView功能

前面searchview里面,如果要將鍵盤的換行改成搜索,是要修改imeOptions的屬性即可,而Edittext的屬性里其實是有這個的,所以在edittext的布局中添加imeOptions = “actionSearch” ,但是只添加這個屬性是無法實現的。

 <EditText     android:inputType="text"     android:singleLine="true"     android:imeOptions="actionSearch"     android:layout_width="wrap_content"     android:layout_height="wrap_content" />

其他的基礎屬性可以任意添加,再運行app發現輸入文字后,換行確實換成搜索了。前三個屬性一個都不能少。這樣的話,我們只要在添加一個搜索的點擊事件即可了:

et_earch.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {     if(actionId == EditorInfo.IME_ACTION_SEARCH){  //如果actionId是搜索的id,則進行下一步的操作    doSomething() }   return false; }});

實現其中的onEditorAction方法即可。

剩下和searchView還不一樣的就是沒有close的按鈕,其實監聽一下edittext的輸入就可以了,后續我就沒做了,addTextChangedListener應該能實現,思路是:如果edittext里面有問題,則顯示close的button,如果沒有文字,則gone掉布局里面的close button。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 农安县| 镇康县| 磐安县| 秦皇岛市| 大厂| 汉寿县| 武清区| 卓资县| 阿合奇县| 乳山市| 和静县| 江口县| 彝良县| 七台河市| 宁都县| 扶余县| 井陉县| 塔城市| 沅陵县| 舒城县| 岚皋县| 旌德县| 普定县| 壶关县| 寻乌县| 边坝县| 交城县| 开封市| 洪江市| 青州市| 长宁区| 通化县| 永康市| 勐海县| 孙吴县| 大石桥市| 沙坪坝区| 米泉市| 桂东县| 南华县| 贞丰县|