So in my adapter class, I would like to allow user to capture image
fun dispatchTakePictureIntent() {
try {
val captureIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE);
(context as Activity).startActivityForResult(captureIntent, 1)
} catch (e: ActivityNotFoundException) {
e.printStackTrace()
}
}
fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent) {
Log.d("MyAdapter", "onActivityResult")
}
I want the onActivityResult
in a fragment class get called, but it doesn't.
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent) {
val imageListAdapter : ImageListAdapter?=null
imageListAdapter?.onActivityResult(requestCode, resultCode,data)
if (requestCode == 1 && resultCode == Activity.RESULT_OK)
{
longToast("called")
}else{
longToast("no")
}
}
There are no toast displayed. How to solve ?
I realize the onActivityResult
works if I put in one of my Activity class, but I want to put at Fragment class !
(context as Activity)
– VilayetstartActivityForResult
need to call in Adapter class – VilayetdispatchTakePictureIntent()
inside your activity and callstartActivityForResult
from fragment – Anguish