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

首頁 > 學院 > 開發設計 > 正文

最簡單的自定義Toolbar SearchView樣式方法

2019-11-06 09:52:37
字體:
來源:轉載
供稿:網友

Android toolbar的靈活性很高,因為它本身就是一個ViewGroup,所以可以通過添加自定義view的形式自行設置標題的樣式,這樣既不就能滿足大部分需求了。 本次主要說一下使用SearchView的時候,如何自定義它的樣式。

網上大部分都是通過獲取SearchView里的控件如EditText來修改它的樣式,主要代碼如下: SearchView searchView = (SearchView) findViewById(R.id.search); int id = searchView.getContext().getResources().getIdentifier("android:id/search_src_text", null, null); TextView textView = (TextView) searchView.findViewById(id); textView.setTextColor(getResources().getColor(R.color.black6)); textView.setHintTextColor(getResources().getColor(R.color.lightgrey)); 這個方法簡單粗暴(本人并未實踐),但是個人感覺有點麻煩且不夠優雅。如果很多頁面需要用到的話search的話都需要添加這么一段代碼,比較繁瑣。那有沒有一個一勞永逸的方法呢?答案是肯定的!

其實我們可以通過設置style的方式來進行簡單的修改。

<style name="Widget.SearchView" parent="Widget.AppCompat.SearchView"> <item name="defaultQueryHint">請輸入關鍵字</item> <item name="queryBackground">@drawable/abc_textfield_search_material</item> <item name="submitBackground">@drawable/abc_textfield_search_material</item> <item name="closeIcon">@drawable/abc_ic_clear_mtrl_alpha</item> <item name="searchIcon">@drawable/abc_ic_search_api_mtrl_alpha</item> <item name="searchHintIcon">@drawable/abc_ic_search_api_mtrl_alpha</item> <item name="goIcon">@drawable/abc_ic_go_search_api_mtrl_alpha</item> <item name="voiceIcon">@drawable/abc_ic_voice_search_api_mtrl_alpha</item> <item name="commitIcon">@drawable/abc_ic_commit_search_api_mtrl_alpha</item> </style>

通過這個style可以設置searchview的默認hint,EditText的背景和一些icon等等。然后在APP的Theme中添加<item name="searchViewStyle">@style/Widget.SearchView</item> 。 但是現在textview的字體顏色還無法定義。可以在APP的Theme中添加如下屬性設置:

<!--searchview 文字及圖標顏色--> <item name="android:textColor以上基本就能統一設置searchview的樣式了。因為一些屬性比如android:textColorPrimary在設置過程中可能和別的頁面中樣式存在沖突,這個就需要自己考量了,不過一般在activity中各個EditText或者Textview還是自定義顏色比較好而且也方便,所以應該不存在大問題。

另:Toolbar中如果設置溢出圖標樣式? 這里只說個簡單的,Android系統默認提供兩種樣式分別適配Light和Dark主題,這里只能是在Dark中使用Light樣式的圖標,或者Light中使用Dark圖標,如果超過這兩種就得自己定義了。 方法是添加如下屬性到自己的Theme中

<!--toobar 溢出圖標顏色--> <item name="android:textColorSecondary">@android:color/white</item>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 罗江县| 河东区| 清徐县| 确山县| 彰化市| 上饶市| 陆河县| 蒙阴县| 台前县| 抚顺县| 大理市| 舒兰市| 青川县| 陆良县| 滨州市| 龙里县| 张掖市| 手机| 永春县| 金堂县| 岑巩县| 沈阳市| 平乡县| 澄城县| 鹤庆县| 扎鲁特旗| 维西| 九寨沟县| 文水县| 库尔勒市| 江油市| 巫山县| 岳阳市| 凤山县| 密云县| 班玛县| 东安县| 出国| 陆丰市| 旅游| 凤城市|