Saya ingin membuat pemilih gambar dari galeri. Saya menggunakan kode
intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, TFRequestCodes.GALLERY);
Masalah saya adalah bahwa dalam aktivitas ini dan file video ditampilkan. Apakah ada cara untuk memfilter file yang ditampilkan sehingga tidak ada file video yang akan ditampilkan dalam kegiatan ini?
Jawaban:
Benar. Coba ini:
Jangan lupa juga untuk membuat PICK_IMAGE konstan , sehingga Anda dapat mengenali kapan pengguna kembali dari Galeri gambar Activity:
Begitulah cara saya memanggil galeri gambar. Masukkan dan lihat apakah itu cocok untuk Anda.
EDIT:
Ini memunculkan aplikasi Documents. Untuk memungkinkan pengguna juga menggunakan aplikasi galeri yang mungkin telah mereka instal:
sumber
@Override
fungsionActivityResult(int requestCode, resultCode, Intent data)
, di mana itu disarankan agar Anda menggunakan konstan ini untuk memeriksarequestCode
parameter sebelum melakukan tindakan apapun :)Terkadang, Anda tidak bisa mendapatkan file dari gambar yang Anda pilih. Itu karena yang dipilih berasal dari Google+, Drive, Dropbox, atau penyedia lainnya.
Solusi terbaik adalah meminta sistem untuk memilih konten melalui Intent.ACTION_GET_CONTENT dan dapatkan hasilnya dengan penyedia konten.
Anda dapat mengikuti kode di bawah atau melihat intisari saya yang diperbarui .
sumber
if(resultCode == Activity.RESULT_OK) {...}
dapat digunakan untuk mendeteksi keberhasilan / pembatalannew File(data.getData()).getAbsolutePath()
Tebakan saja, saya belum mencobanyagetActivity().getContentResolver().openInputStream(data.getData());
.sumber
path
? diFile file = new File(path);
Anda dapat menggunakan metode ini untuk memilih gambar dari galeri. Hanya gambar yang akan ditampilkan.
dan timpa onActivityResult sebagai
sumber
Ini adalah contoh lengkap untuk izin permintaan (jika perlu), pilih gambar dari galeri, lalu konversikan gambar ke
bitmap
ataufile
AndroidManifesh.xml
Aktivitas
Demo
https://github.com/PhanVanLinh/AndroidPickImage
sumber
Jika Anda hanya mencari gambar dan banyak pilihan.
Lihat @ sekali https://stackoverflow.com/a/15029515/1136023
Ini membantu untuk masa depan. Saya pribadi merasa senang dengan menggunakan MultipleImagePick .
sumber
Hanya untuk menawarkan pembaruan pada jawaban untuk orang-orang dengan API min 19, per dokumen:
Buka file menggunakan kerangka kerja akses penyimpanan - Android Docs
sumber
Untuk hanya memilih dari lokal, tambahkan ini:
Dan ini berfungsi dengan baik:
sumber
Anda dapat melakukannya dengan lebih mudah daripada jawaban ini:
sumber