如何去掉searchView中下划线

本文介绍了两种去除SearchView下划线的方案:一种是通过反射修改内部属性,另一种是利用XML布局文件找到相关ID并设置背景。同时提到了在源码中查找属性和方法的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     1、去掉searchView中下划线:
      第一种:根据属性:
Class<?> c=searchView.getClass();
try {
Field f=c.getDeclaredField("mSearchPlate");//通过反射,获得类对象的一个属性对象
f.setAccessible(true);//设置此私有属性是可访问的
View v=(View) f.get(searchView);//获得属性的值
v.setBackgroundResource(R.drawable.searchview_shape);//设置此view的背景
} catch (Exception e) {
e.printStackTrace();
}


      第二种:根据xml文件:
//根据字符串资源获得具体的id值
int id=getResources().getIdentifier("android:id/search_plate",//查找文件sdk\platforms\android-17\data\res\layout\search_view.xml中的id
null,//知道资源类型,底层自动实现
getPackageName());//包名是清单文件里面的此项目的包名
LinearLayout layout=(LinearLayout) searchView.findViewById(id);
layout.setBackgroundResource(R.drawable.searchview_shape);


     2、把searchView的下划线去掉:
进入此类,查找有关此功能的属性,查构造方法,查get,set,方法。
查找文件sdk\platforms\android-17\data\res\layout\search_view.xml,拖动此文件到Eclipse打开的任何一个界面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值