19 Şubat 2015 Perşembe

Android Çoklu Resim Seçme


Bu sıralar üzerinde çalıştığım projede çoklu resim seçme gibi bir özelliğin olması gündeme geldi. Android' de galeriden ya da kameradan seçenekleriyle kullanıcıya resim seçtirebiliyoruz evet ama bu işlemin sonucu bize tek bir resim dönüyor. Galeriden tek seferde bir çok resim seçebilmek için şu şekilde bir çözüm düşündüm:
 Telefon hafızasındaki tüm resimleri çekip kendi oluşturduğum gridview gömerek kullanıcıya bu resimleri gösterebilmeliydim.
GridView' in her elemanına bir checkBox koyarak kullanıcının seçeceği resimleri işaretlemesini sağlamalıydım.
Seçtiğim resimlerden dönen yolları (paths) Universal Image Loader kütüphanesi sayesinde imageviewlere verip ekranda seçilen resimleri göstermeliydim.

Tüm resimleri hafızadan alabilmek için READ_EXTERNAL_STORAGE iznine gerek duyuyoruz.
Manifestte isteklerimize cevap alabilmek için oluşturduğumuz özel Activity' i intent filter özelliği ile filtreden geçiriyoruz.


           <intent-filter>
               <!-- For recognation our request type-->
              <action android:name="cunoraz.ACTION_PICK" />
              <action android:name="cunoraz.ACTION_MULTIPLE_PICK" />

               <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>

Activity' mizi tek resim seçmek üzere çağırırken

Intent i = new Intent(Action.ACTION_PICK);
startActivityForResult(i, 100);

çoklu resim seçmek için çağırırken
Intent i = new Intent(Action.ACTION_MULTIPLE_PICK);
startActivityForResult(i, 200);

şeklinde kullanmamız yeterli olacaktır. Dönen resimlerin üzerlerine tıklayarak dosya dizinlerini de görebilirsiniz.
Projenin detaylarına buradan ulaşabilirsiniz.
https://github.com/Cutta/MultipleImagePicker
Herkese kolay gelsin.

Hiç yorum yok:

Yorum Gönder