Reputation: 619
I am able to change background for SearchView
using following code:
mSearchView = (SearchView) findViewById(R.id.search_search_view);
LinearLayout layout = (LinearLayout)mSearchView.findViewById(mSearchView.getContext().getResources().getIdentifier("android:id/search_bar", null, null));
layout.setBackground(getResources().getDrawable(R.drawable.curve_stroke_border_white_bg));
But How to remove search_plate
in Search view ( which is shown as red color selected in picture).
Can anyone have any idea please help me..
Thanks in adavance.
Upvotes: 1
Views: 2290
Reputation: 10757
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
getMenuInflater().inflate(R.menu.home, menu);
MenuItem searchMenuItem = menu.findItem(R.id.activity_home_action_search);
SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchMenuItem);
View searchplate = searchView.findViewById(android.support.v7.appcompat.R.id.search_plate);
searchplate.setBackgroundResource(android.R.color.transparent);
}
Upvotes: 1
Reputation: 3908
Suppose, this will help you
int searchPlateId = searchView.getContext().getResources()
.getIdentifier("android:id/search_plate", null, null);
View searchPlateView = searchView.findViewById(searchPlateId);
if (searchPlateView != null) {
searchPlateView.setBackgroundColor(Color.BLACK); //depand you can set
}
Upvotes: 5