Установить 2 изображения в gridview onitemclick

Я новичок в мире Android и Java едва 3 месяца, работая над этим. Поэтому, пожалуйста, помогите мне. У меня есть gridview, которые отображают изображения по умолчанию. Мое требование - когда пользователь нажимает на изображение набора продуктов в течение некоторого времени, например, 2/3 секунды, и снова отображает изображение по умолчанию. Пожалуйста, дайте мне знать, как я могу справиться с этим. Пример кода будет оценен.

В настоящее время у меня есть следующий нерабочий код, который всегда показывает изображение по умолчанию

        gridview.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View imgView,
                int position, long id) {

            ImageAdapter adapter = (ImageAdapter) parent.getAdapter();
            ImageView imageView = (ImageView) imgView;
            imageView.setImageResource(R.drawable.productImage);
                            Thread.sleep(1000);
            imageView.setImageResource(R.drawable.bg_default_card);
            }
        });

1 ответ

Я нашел обходной путь. Я создаю объект Runnable и устанавливаю изображение на изображение по умолчанию в методе run

Я поместил следующий код в событие onItemClick. Я создаю одну переменную уровня класса для imageview, например, imgView1 назначает кликнутое изображение для события imgView1 onItemClick

//create runable object
Runnable r1 = new Runnable() {
    public void run() {
        //check imageView1 not null            
        if (imgView1 != null) {                          
            //set image to default
            imgView1.setImageResource(R.drawable.bg_default_card);
    }
}
};
//call runnable after some interval
imgView1.postDelayed(r1, 500);

Спасибо.

Другие вопросы по тегам