android–startActivityForResult结果代码始终为0

android–startActivityForResult结果代码始终为0,第1张

概述我正在尝试将编辑列表从活动2返回到活动1.这是我的代码:publicvoidlistDataSms(ArrayList<MySmsLog>stringList){Bundlebundle=newBundle();bundle.putParcelableArrayList(NUMBER_LIST,stringList);Intenti=newIntent(this,MyCommonListActivity.c

我正在尝试将编辑列表从活动2返回到活动1.
这是我的代码:

public voID ListDataSms(ArrayList<MySmsLog> stringList) {    Bundle bundle = new Bundle();    bundle.putParcelableArrayList(NUMBER_List, stringList);    Intent i = new Intent(this, MyCommonListActivity.class);    i.putExtra(WHO_INT, SMS_LOG);    i.putExtras(bundle);    startActivityForResult(i, SMS_LOG);}@OverrIDeprotected voID onActivityResult(int requestCode, int resultCode, Intent data) {    if (requestCode == SMS_LOG) {        if (resultCode == RESulT_OK) {            ArrayList<MySmsLog> mySmsLogs = (data.getParcelableArrayListExtra(PICK_SMS_LOG));            mainLog.setSmsLog(mySmsLogs);        }         if (resultCode == RESulT_CANCELED) {            // do something if there is no result        }    }}@OverrIDepublic voID onBackpressed() {    super.onBackpressed();    Intent intent = new Intent();    Bundle result = new Bundle();    switch (who) {        case SMS_LOG:            result.putParcelableArrayList(MainActivity.PICK_SMS_LOG, mySmsLogList);            break;    }    setResult(RESulT_OK, intent);    intent.putExtras(result);}

但我永远不会得到setSmsLog,因为resultCode始终为0.
我尝试了Android onActivityResult is always 0但没有结果.
即使我将条件更改为if(resultCode == RESulT_CANCELED){do smth}程序以NullPointerException结束.

解决方法:

假设上面显示的代码中的onBackpressed()来自MyCommonListActivity,那么调用setResult()为时已晚.充其量,如果你将super.onBackpressed()称为最后一件事,而不是第一件事,你的代码可能会有效.典型的解决方案是在用户点击ListVIEw中的某些内容时调用setResult()和finish(),或者选择要使用的特定项,而不是等到用户按下BACK.

总结

以上是内存溢出为你收集整理的android – startActivityForResult结果代码始终为0全部内容,希望文章能够帮你解决android – startActivityForResult结果代码始终为0所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1115704.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存