Eu estou trabalhando no GridView pela primeira vez e me deparei com o seguinte problema. Estou me referindo a este tutorial http://www.learn2crack.com/2014/01/android-custom-gridview.html bem os ícones e o texto são exibidos exatamente na sequência como está na matriz. como mostrado na captura de tela a seguir 1ª imagem:
mas quando eu aumento a largura e a largura das colunas para que nem todos os dados sejam vistos de uma só vez (ou seja, eu preciso rolar para baixo para ver os dados no final. Acho que as imagens a seguir podem ajudar.
2 screenshot:
3ª captura de tela, este é o conteúdo restante que pode ser visualizado após a rolagem para baixo:
Se você comparar a matriz real de texto i.e "String [] web" do link ou a primeira imagem. Até stumbleUpon ele está exibindo a seqüência correta de array, mas depois que "github", "google" e "facebook" está sendo exibido em vez de "SoundCloud", "Reddit", "Blogger".
Agora minha pergunta é: por que isso está acontecendo? o adaptador carrega apenas o conteúdo que está visível e recarrega o conteúdo quando a outra parte é visível? posso saber qual é a solução para isso? ou qual é a abordagem correta para usar gridview?
Se você não é capaz de entender minhas dúvidas.Por favor, não hesite em perguntar.Obrigado antecipadamente.
Respostas:
0 para resposta № 1colocar este código em outra condição que vai funcionar
TextView textView = (TextView) grid.findViewById(R.id.grid_text);
ImageView imageView = (ImageView)grid.findViewById(R.id.grid_image);
textView.setText(web[position]);
imageView.setImageResource(Imageid[position]);
então o que está acontecendo é quando a visualização está sendo reutilizada, você não está definindo os dados (ou seja, imagem e texto)