很简单,如何在Android中更改SearchView底部的线条颜色?我已经尝试过使用queryBackground,背景和其他各种方法,但是似乎无法用XML来获取它。我很高兴以编程方式或以XML方式进行操作。只希望它能工作!
答案 0 :(得分:1)
使用“以下”方法更改SearchView底行的颜色。
在这里我将蓝色添加为底线
private void customizeSearchView() {
int searchTextId = getResources().getIdentifier("android:id/search_src_text", null, null);
EditText searchBox = ((EditText) searchView.findViewById(searchTextId));
searchBox.setBackgroundColor(Color.WHITE);
searchBox.getLayoutParams().height = LinearLayout.LayoutParams.MATCH_PARENT;
int search_plateId = getResources().getIdentifier("android:id/search_plate", null, null);
View mSearchPlate = ((View) searchView.findViewById(search_plateId));
mSearchPlate.setBackgroundColor(Color.BLUE);
int searchCloseImageId = getResources().getIdentifier("android:id/search_close_btn", null, null);
ImageView searchClose = ((ImageView) searchView.findViewById(searchCloseImageId));// change color
searchClose.setBackgroundColor(Color.WHITE);
}
答案 1 :(得分:0)
嗨,尝试一下可能会对您有所帮助
android.support.v7.widget.SearchView searchView=findViewById(R.id.search_view);
View v = searchView.findViewById(android.support.v7.appcompat.R.id.search_plate);
v.setBackgroundColor(Color.parseColor("color code"));
答案 2 :(得分:0)
androidx.appcompat.widget.SearchView searchView = findViewById(R.id.Search_Categorie);
View v = searchView.findViewById(androidx.appcompat.R.id.search_plate);
v.setBackgroundColor(Color.parseColor("#ffffff"));