Android drawSelectorOnTop с GridView
Я разрабатываю приложение с вкладками, в котором один из фрагментов, CollectionsFragment, содержит GridView с ImageView в каждом слоте. Я хотел бы использовать селектор для обратной связи с пользователями, когда пользователь нажимает на одно из изображений.
Я успешно реализовал селектор, однако моя проблема в том, что селектор рисует только на фоне изображения, но я бы хотел, чтобы селектор рисовал по всему изображению. Я видел эту проблему, на которую ссылались в другом месте, однако решение, выбранное многими, устанавливая свойство drawSelectorOnTop GridView, не работает для меня.
Соответствующий фрагмент с соответствующим кодом адаптера:
public class CollectionsFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.activity_collections, container, false);
// Grid view is inside the xml view inflated above
GridView gridView = (GridView)view.findViewById(R.id.gridview);
gridView.setDrawSelectorOnTop(true);
((GridView) gridView).setAdapter(new CustomGridViewAdapter(getActivity()));
return view;
}
private class CustomGridViewAdapter extends BaseAdapter {
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
View v = view;
ImageView picture;
TextView name;
if(v == null) {
v = inflater.inflate(R.layout.collections_item, viewGroup, false);
v.setTag(R.id.picture, v.findViewById(R.id.picture));
v.setTag(R.id.text, v.findViewById(R.id.text));
}
picture = (ImageView)v.getTag(R.id.picture);
name = (TextView)v.getTag(R.id.text);
Item item = (Item)getItem(i);
name.setText(item.name);
picture.setImageResource(item.drawableId);
picture.setBackgroundResource(R.drawable.selector);
return v;
}
}
}
И мой селектор для полноты ради:
Спасибо за любую помощь,