修改SearchView默认搜索图标

标题:在代码中修改SearchView控件的默认图标样式,并设置搜索图标与默认字体的距离

步骤:

1、首先定义一个SearchView

Searchview mSearchview  = (SearchView) findViewById(R.id.search_view);


2、获取原生SearchView布局文件中的id:search_src_text

int text_id = mSearchview.getContext().getResources().

getIdentifier("android:id/search_src_text", null, null);


3、获取文本

TextView textView = (TextView) mSearchview.findViewById(text_id);

textView.setTextColor(Color.RED);//设置默认字体颜色

textView.setTextSize(14);//设置默认字体大小


4、替换搜索图标,将搜索图标与默认字体绑定

final Drawable searchIcon = context.getDrawable(R.drawable.searchview_search_icon);
final int textSize = (int) (textView.getTextSize() * 1.25);//根据文本框大小来确定图标大小

searchIcon.setBounds(0, 0, textSize, textSize);

//设置默认显示字体

final String  hintString = getResources().getString(R.string.use_help_text_search);
final SpannableStringBuilder ssb = new SpannableStringBuilder("   "); // for the icon
ssb.append(hintString);
ssb.setSpan(new ImageSpan(searchIcon), 1, 2, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
int padding =getResources().getDimensionPixelSize(R.dimen.searchview_search_button_padding);
textView.setPadding(padding, padding, padding, padding);//设置图标和文字跟四周距离
textView.setGravity(Gravity.BOTTOM);

textView.setHint(ssb);


如果对SearchView不熟悉,可以下载源码看下,对照原生布局可以更好的修改。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值