`
yxwang0615
  • 浏览: 559727 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

startActivityForResult 不满足触发条件就返回的检测

 
阅读更多

       在android开发中,当不满足触发条件就按返回键的时候,就要对此进行检测。尤其是当前Activity需要往前一个Activity传送消息时。即Activity1跳转到Activity3如果采用的是startActivityForResult这种方式,如果不重写返回键,程序不知道要返回给Activity1什么内容就会报错。因此,必须对Activity3的返回按键重写。

@Override
	public void onBackPressed() {
		//A跳转到B如果采用的是startActivityForResult这种方式,
		//如果不重写返回键,程序不知道要返回给Activity1什么内容就会报错
		//有super.onBackPressed() 时 不能把在此方法中设置的 intent 传回
		//上一个Activity ,因此 去掉super.onBackPressed()  在末尾加上finish
		
		 	Intent intent=new Intent();  
		 	intent = getIntent().putExtra("callAddItem", false);
	        setResult(RESULT_OK, intent);  
	        finish();  
	}

 

        有super.onBackPressed() 时 不能把在此方法中设置的 intent 传回上一个Activity ,因此 去掉super.onBackPressed()  在末尾加上finish();在上一个activity中用onActivityResult() 方法接受上此Activity的onBackPressed()方法传回去的intent,在onBackPressed()设置resultCode  在上一个Activity 的OnActivityResult()中验证;

 

分享到:
评论

相关推荐

    StartActivityForResult

    在Android应用开发中,`StartActivityForResult`是一个关键的组件交互方法,用于在一个Activity(活动)启动另一个Activity并期望得到返回结果。这个方法允许开发者在应用程序的不同组件之间传递数据,通常用于实现...

    startActivityForResult的详细用法

    在Android应用开发中,`startActivityForResult`是一个非常重要的方法,它允许我们在启动一个Activity时传递数据,并在那个Activity执行完后返回结果到调用它的Activity。这个过程涉及到Intent、生命周期管理和数据...

    startActivityForResult过时.md

    startActivityForResult过时.md

    StartActivityForResult小例子

    5. 主Activity的`onActivityResult`回调方法被触发,根据请求码判断是哪个`StartActivityForResult`返回的结果,然后处理返回的数据。 ### 2. 使用步骤 #### 步骤1:创建Intent 在启动者Activity中,创建一个...

    startActivityForResult你所不知道的---Fragment

    在Android开发中,`Fragment`是App界面设计中不可或缺的一部分,它允许我们构建模块化、可重用的UI组件。然而,尽管`Activity`中的`startActivityForResult()`方法被广泛使用,但`Fragment`中的相应功能`...

    【android】的startActivityForResult

    在Android应用开发中,`startActivityForResult`是一个关键方法,用于在两个Activity之间进行交互,尤其是在需要从一个Activity启动另一个Activity并期待返回结果时。这个方法允许开发者在启动新的Activity时传递...

    startActivityForResult intent 跳转相关的

    例如,在一个日记应用中,用户可能需要从相册选取图片来添加到日记条目,这就需要用到`startActivityForResult()`来启动相册选择器,然后在选择图片后返回到日记编辑界面。 源码分析部分可能讲解了`...

    Android-基于RxPermissions框架思想在使用startActivityForResult可以不重写onActivityResult回调

    这样,结果就会自动通过`onActivityResult`回调返回,但我们不需要重写这个回调,而是通过Observable的`doOnNext`或`doOnError`来处理结果: ```java resultObservable .doOnNext(result -> { // 处理返回的结果 ...

    startActivityForResult Demo

    在Android应用开发中,`startActivityForResult`是一个非常重要的方法,它允许我们启动一个新的Activity,并在新Activity执行完特定操作后返回结果。这篇博客“startActivityForResult Demo”可能详细介绍了如何使用...

    Android之Intent通过startActivityForResult方法启动新Activity

    `startActivityForResult()`是Intent的一种特殊用法,它允许一个Activity启动另一个Activity,并期望在新Activity执行完特定操作后返回结果。下面将详细阐述`startActivityForResult()`的工作原理及其在实际开发中的...

    Android-一种startActivityForResult更简单流程

    这样,你就可以在一个更友好的接口下启动带有结果的Activity,而不需要直接处理请求码。这样的工具类可能如下: ```kotlin class ActivityUtils { companion object { fun startActivityForResult(activity: ...

    测试Activity的四种启动模式对startActivityForResult的影响

    在Android应用开发中,`Activity`是用户界面的主要载体,而`startActivityForResult`方法则用于在一个`Activity`中启动另一个`Activity`并期待得到返回的结果。本文将深入探讨`Activity`的四种启动模式(Standard、...

    startActivityForResult用法详解

    在Android应用开发中,`startActivityForResult`是一个关键的方法,用于启动一个新的Activity并期待返回一个结果。这个方法常用于在不同Activity之间进行数据交互,比如获取用户的选择、处理权限请求等。在这个场景...

    startActivityForResult使用方式

    2. 如果新Activity不返回任何结果,`setResult()`可以设置为`RESULT_CANCELED`,表示操作取消。 3. `onActivityResult()`会在所有与当前Activity关联的`onPause()`方法之后调用,而在`onResume()`之前。 4. 当新...

    startActivityForResult_demo

    在Android应用开发中,`startActivityForResult`是一个关键的API,用于从一个活动(Activity)启动另一个活动,并期望在新活动执行完毕后返回结果。这个方法使得不同活动间的交互变得可能,尤其在需要用户进行一些...

    startActivityForResult+onActivityResult+setResult

    3个方法的介绍和使用 startActivityForResult(Intent intent, int requestCode ) onActivityResult(int requestCode ,int resultCode, Intent data) setResult(int resultCode,intent intent)

    简化 startActivityForResult 的使用1

    当 requestCode 比较多的时候,代码就会变得臃肿,并且逻辑被分离了,调用 startActivityForResult 的地方和接收结果的地方不在同一个位置,增加了代码的阅读难度。 为了解决这个问题,可以借鉴 Glide 使用 ...

    使用startActivityForResult得到通讯录联系人信息

    这里实现的效果是,点击a Activity后,屏幕会跳转到手机的通讯录,任意选择点击一个通讯录中的联系人,则从通讯录Activity跳回到a Activity并在a Activity上显示你刚才选择通讯录联系人的名字。

    startActivityForResult的简单使用

    定义了4个Activity,主activity跳转到其他2个时附带String good,第二个在接收到数据后将String +"boy"后返回给主Activity并Toast;第三个在接收到数据后将String +"boy&girl"后返回给主Activity并Toast。第4个采用...

Global site tag (gtag.js) - Google Analytics