我有一个简单的表单,用户可以从列表中添加,编辑和删除人员.当用户选择编辑某个人时,它会执行startActivityForResult,以便在编辑完成后进行相应的更改并@R_71_6419@.如果用户从编辑屏幕单击后退按钮,则会出现强制关闭错误.
我认为这与系统期望结果有关,而且我没有正确地捕获它.我如何捕获此错误?
这是当前的onActivityResult代码:
@OverrIDeprotected voID onActivityResult(int requestCode, int resultCode, Intent intent) { super.onActivityResult(requestCode, resultCode, intent); Bundle extras = intent.getExtras(); switch(requestCode) { case ACTIVITY_CREATE: String person = extras.getString("person"); mDbHelper.addPerson(person); fillData(); break; case ACTIVITY_EDIT: Long rowID = extras.getLong("_ID"); if (rowID != null) { String editPerson = extras.getString("person"); mDbHelper.updatePerson(rowID, editPerson); } fillData(); break; }}
感谢您的任何帮助.
解决方法:
首先,使用DDMS查看堆栈跟踪,它将告诉您异常发生在哪一行.
您在调用活动中可以执行的 *** 作是检查resultCode,并在您的被调用者活动中使用setResult()
设置它.
例如,如果用户按下了resultCode将是RESULT_CANCELED.如果是这种情况,请不要尝试从意图中提取数据.
总结以上是内存溢出为你收集整理的android – 当startActivityForResult处于活动状态时,如何处理后退按钮?全部内容,希望文章能够帮你解决android – 当startActivityForResult处于活动状态时,如何处理后退按钮?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)