2016-04-11 10 views
0

Ich versuche, die Bilder zu holen und in Grid anzuzeigen, es funktioniert gut, aber die Bilder sieht verschwommen aus.MediaStore Thumbnail Bilder sieht verschwommen

Unten ist das, was ich versucht habe: (In der Reihenfolge)

final String[] columns = {MediaStore.Images.Media.DATA, MediaStore.Images.Media._ID}; 
     final String orderBy = MediaStore.Images.Media._ID + " DESC"; 
     cursor = getActivity().getContentResolver().query(
       MediaStore.Images.Media.EXTERNAL_CONTENT_URI, columns, null, 
       null, orderBy); 
     int image_column_index = cursor.getColumnIndex(MediaStore.Images.Media._ID); 
     this.count = cursor.getCount(); 
     this.arrPath = new String[this.count]; 
     ids = new int[count]; 
     for (int i = 0; i < this.count; i++) { 
      cursor.moveToPosition(i); 
      ids[i] = cursor.getInt(image_column_index); 
      int dataColumnIndex = cursor.getColumnIndex(MediaStore.Images.Media.DATA); 
      arrPath[i] = cursor.getString(dataColumnIndex); 
     } 

Bitte helfen Sie mir Code zu korrigieren.

+0

Wie erzeugen Sie die Bitmap? Können Sie Ihren Code aktualisieren – Gautam

Antwort

1

Am besten verwenden Sie recent-images Bibliothek. Es ist so einfach. Fügen Sie Ihrem Projekt einfach eine Bibliotheksabhängigkeit hinzu und fügen Sie dann untergeordnete Zeilen in Ihre Klasse ein. Ihr Adapter ist bereit, Sie können ihn für Ihre Gridview einstellen.

RecentImages ri = new RecentImages(); 
ImageAdapter adapter = ri.getAdapter(MainActivity.this); 

Es hat eine Option für die Anpassung Ihrer Abfrage auf Bilder.

+0

Ich fand einen Fehler, dass in der obigen Bibliothek die Bilder im Raster verzerrt werden, kennen Sie andere Bibliothek, die die ähnliche Arbeit macht? – user2056563

+0

Bitte [schreiben Sie keine identischen Antworten auf mehrere Fragen] (https://meta.stackexchange.com/q/104227). Schreibe eine gute Antwort, dann vote/flag, um die anderen Fragen als Duplikate zu schließen. Wenn die Frage kein Duplikat ist, * schneide deine Antworten auf die Frage *. –