Я работаю над приложением для Android с kotlin, так что ...
Контекст:
у меня есть активность (A), чем у viewPager, viewPager содержит 2 фрагмента (F1, F2), один из этих фрагментов (F1) имеет еще 2 фрагмента (CF1, CF2)
Проблема в том, что когда я вызываю действие (B) для результата из фрагмента (CF1), действие (A) получает результат от действия (B), затем передается во фрагмент (F1), но никогда не получать по фрагменту (CF1)
val intent = Intent(activity, B::class.java)//how i call activity(B) so good
intent.putExtra("select",1)
//parentFragment!!.startActivityForResult(intent, REQ_CODE)//
startActivityForResult(intent, REQ_CODE)
//how i receive on Activity(A) so good
public override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent) {
for(i in 0..adapterNormal.COUNT){
var f = adapterNormal.getItem(i)
f?.onActivityResult(requestCode,resultCode,data)
}
}
//how i receive on fragment(F1) so good
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if(resultCode == RESULT_OK){
cli_name = data!!.getStringExtra("clie_name")
cli_id = data.getStringExtra("clie_id")
}
}
//how i tried to receive on fragment(CF1)
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
Log.d("onActivityResult", "requestCode = $requestCode")
}
Я пытался упростить проблему, надеюсь, кто-нибудь сможет мне помочь.
Спасибо.