onActivityResult değer döndürme sorunu
Arkadaşlar merhaba, android geliştirmede yeni olduğumu belirtmek isterim ve hemen soruma geçiyorum. Basit bir uygulama yaptım ve uygulamamda 2 adet buton var. Birincisi cihazın galerisine giderek seçilen resim dosyasını imageview'e aktarmakta, ikinci buton ise kamera ile çektiğim resmi imageview'e aktarmakta. Sorun ise kullanıcı resim seçmeden ya da fotoğraf çekmeden geri tuşuyla ana ekran döndüğünde hata ile karşılaşıyorum.
"protected void onActivityResult(int requestCode, int resultCode, Intent data)" içerisindeki resultCode değerlerini yazdırdığımda, resim seçimi ya da foto çekimi yapıldığında değeri -1 iken yapılmadığında 0 (sıfır) olmakta. if() bloğu ile bu sonuçlardan herhangi bir çözüm üretemedim. Sorun "data" bilgisinin boş gelmesinden kaynaklı gibi çünkü requestCode değerlerini rasgele değiştirdiğimde program hatasız ana sayfaya dönebiliyor.
İşte kodlar:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==10) {
ImageView vesikalik = (ImageView) findViewById(R.id.vesikalik);
Bitmap bitmap = null;
if (bitmap != null)
bitmap.recycle
try {
InputStream stream = getContentResolver().openInputStream(data.getData());
bitmap = BitmapFactory.decodeStream(stream);
stream.close();
vesikalik.setImageBitmap(bitmap);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
if(requestCode==33) {
Bitmap image = (Bitmap) data.getExtras().get("data");
ImageView resim = (ImageView) findViewById(R.id.vesikalik);
resim.setImageBitmap(image);
}
}