问题:收到的resultcode为0,但是在setResult()方法中设置的值为2。
解决方案:保证两点
1、setresult时如果intent不携带数据,也就是data是null,这时候使用setresult(resultcode)而不是setresult(resultcode,intent)。
2、setresult()要在finish()方法之前调用。
原因猜想:是onactivityresult的调用时间,和Acticity生命周期调用时间的先后顺序,导致的setresult失败
本文探讨了在Android开发中遇到的setResult方法失效的问题,分析了可能的原因,并提出了两个关键解决方案:确保在Intent未携带数据时正确使用setResult方法,并且在finish方法之前调用setResult。
问题:收到的resultcode为0,但是在setResult()方法中设置的值为2。
解决方案:保证两点
1、setresult时如果intent不携带数据,也就是data是null,这时候使用setresult(resultcode)而不是setresult(resultcode,intent)。
2、setresult()要在finish()方法之前调用。
原因猜想:是onactivityresult的调用时间,和Acticity生命周期调用时间的先后顺序,导致的setresult失败
510

被折叠的 条评论
为什么被折叠?