Android drawSelectorOnTop con GridView

Estoy desarrollando una aplicación con pestañas en la que uno de los fragmentos, CollectionsFragment, contiene un GridView con un ImageView en cada ranura. Me gustaría usar un selector para dar retroalimentación a los usuarios cuando el usuario hace clic en una de las imágenes.

He implementado exitosamente el selector, sin embargo, mi problema es que el selector solo está dibujando en el fondo de la imagen, pero me gustaría que el selector dibuje sobre toda la imagen. He visto este problema referenciado en otra parte, sin embargo, la solución seleccionada por muchos, al configurar la propiedad drawSelectorOnTop de GridView, no me funciona.

El fragmento relevante con el código del adaptador relevante:

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;
            }
        }
}

Y mi selector para la integridad:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" 
      android:drawable="@color/buttonhighlight"/> <!-- pressed state -->
<item android:state_focused="true" 
      android:drawable="@color/buttonhighlight"/> <!-- focused state -->
<item android:drawable="@android:color/transparent"/> <!-- default state --> 
</selector>

Gracias por cualquier ayuda,

Respuestas a la pregunta(2)

Su respuesta a la pregunta