Выделить выбранный элемент GalleryView

У меня есть GalleryView, который постоянно отображает сотни изображений. Центральное изображение (по умолчанию при загрузке приложения или когда пользователь нажимает на другое изображение в списке прокрутки horz.) Отображается в большем пространстве ниже в ImageView. Я хотел бы выделить выбранное изображение в приложении GalleryView, возможно, с более яркой рамкой, чем остальные, чтобы оно выделялось как выбранное пользователем изображение. Прямо сейчас, даже если центральное изображение находится в фокусе, оно имеет ту же рамку и выглядит и ощущается как остальные изображения рядом с ним. Я хотел бы, чтобы это было визуально дифференцировано.

Кто-нибудь может помочь мне начать?

Спасибо,

Ab

1 ответ

Решение

Используйте этот xml, чтобы выделить представление в вашем сеточном представлении, когда на него нажимают:

selector.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
    android:drawable="@android:drawable/highlight_border" />      
</selector>

Где highlight_border - это нарисованное вами изображение, которое является выделенной рамкой.

Затем в вашем XML-файле, содержащем, как выглядит каждый элемент gridview, поместите это:

grid_view_element.xml

<Element your using (like a LinearLayout or TextView
  ...
  background="@drawable/selector"
/>
Другие вопросы по тегам