Android SearchView 自定义SearchIcon和字体颜色大小

来源:互联网 发布:今日头条 源码 编辑:程序博客网 时间:2024/06/08 06:30

一、自定义SearchIcon

1、API版本低于21:版本小于21时,要修改SearchIcon比较复杂,需要先获取到SearchView的ImageView,然后为ImageView设置图片,具体代码如下:

(1)初始化SearchView控件

mSearch = (SearchView) view.findViewById(R.id.search);

(2)设置自定义的搜索图标

复制代码
if(mSearch==null){    return;}else{//获取ImageView的idint imgId = mSearch.getContext().getResources().getIdentifier("android:id/search_mag_icon",null,null); //获取ImageViewImageView searchButton = (ImageView)mSearch.findViewById(imgId);//设置图片searchButton.setImageResource(R.drawable.search);//不使用默认mSearch.setIconifiedByDefault(false);}
复制代码
2、API版本大于21时,就很方便了,直接在layout文件中为SearchView设置属性searchIcon即可啦。
android:searchIcon="@drawable/search"
二、自定义字体颜色和大小,也可以修改SearchView中的提示文字的颜色

1、初始化SearchView控件,同上。

2、获取到SearchView的TextView,然后就可以修改其属性了,代码如下。

复制代码
if(mSearch==null){    return;}else{//获取到TextView的IDint id = mSearch.getContext().getResources().getIdentifier("android:id/search_src_text",null,null);//获取到TextView的控件TextView textView = (TextView) mSearch.findViewById(id);//设置字体大小为14sptextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 14);//14sp//设置字体颜色textView.setTextColor(getActivity().getResources().getColor(R.color.search_txt_color)); //设置提示文字颜色textView.setHintTextColor(getActivity().getResources().getColor(R.color.search_hint_color));}
复制代码
三、最终效果图:



转自:http://www.cnblogs.com/LT5505/p/5534357.html

0 0
原创粉丝点击