Перезагрузить gridview с другими данными после onitemclick

У меня есть активность с gridview. Я могу заполнить этот макет и установить прослушиватель для каждого элемента сетки. Теперь я бы перезагрузил тот же вид сетки с разными данными после нажатия на один элемент. Возможно?


person Claudio Pomo    schedule 25.09.2012    source источник
comment
после щелчка по элементам просто очистите gridview, получите другие данные и установите для них gridview .......   -  person Dhruvil Patel    schedule 25.09.2012


Ответы (1)


Вы можете установить прослушиватель для GridView, и после того, как произошло лизание, измените данные, а затем обновите сетку.

Посмотри на это:

final GridView grid = new GridView(this); // Could be findViewById(R.id.grid) 
        grid.setAdapter(new ArrayAdapter<String>(this, android.R.id.text1)); // Use your own Adapter with real data
        grid.setOnItemClickListener(new OnItemClickListener()
        {
            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
            {
                //Do something - change the data of the List/Array/etc

                // Now you can try this:
                ((ArrayAdapter<String>)grid.getAdapter()).notifyDataSetChanged();

                // Or this:
                grid.setAdapter(new ArrayAdapter<String>(MyActivity.this, android.R.id.text1));

            }
        });
person Givi    schedule 25.09.2012
comment
Нет. Это тот же GridView... меняется только адаптер. - person Givi; 26.09.2012
comment
@Givi Большое спасибо, это работает, вы спасли мой день, я работаю над этим уже 2 дня, спасибо. - person ULHAS PATIL; 15.09.2016