Android 在ActivityTwo调用完成()后继续ActivityOne上的任务

Android 在ActivityTwo调用完成()后继续ActivityOne上的任务,android,android-layout,android-intent,android-activity,android-custom-view,Android,Android Layout,Android Intent,Android Activity,Android Custom View,我有一个自定义视图,其中有一个滑块。从视图内部,在SomeSlideInstance上启动一个活动。因此,我的设计是ActivityOne=>ListView=>Adapter=>CustomView=>[slide:intent]=>ActivityTwo。 现在我的问题是: 当滑动动作启动Activity2时,我需要它保持打开(即滑动),直到Activity2启动。但如果用户单击finish()ActivityTwo,当控件返回到ActivityOne时,我需要重新设置滑块。我如何做到这一点

我有一个自定义视图,其中有一个滑块。从视图内部,在SomeSlideInstance上启动一个活动。因此,我的设计是
ActivityOne=>ListView=>Adapter=>CustomView=>[slide:intent]=>ActivityTwo
。 现在我的问题是:

当滑动动作启动Activity2时,我需要它保持打开(即滑动),直到Activity2启动。但如果用户单击finish()ActivityTwo,当控件返回到ActivityOne时,我需要重新设置滑块。我如何做到这一点

我试过什么

我尝试在CustomView中使用处理程序,但即使使用postDelayed并将处理程序代码放在startActivity之后,处理程序代码仍会在Activity2启动之前执行

我尝试在CustomView内部使用一个内部活动,然后从内部活动调用startActivityForResult(ActivityTwo.class,CODE),但这会引发各种错误,因为我尝试了不同的配置

在某个时刻,我还尝试了在CustomView中的新线程中延迟runnable;因此,它将在ActivityTwo启动后运行,然后我得到一个关于只有activity才能更改其视图的错误。

覆盖onActivityResult()的startActivityForResult()听起来正是您所需要的,但如果您已经尝试过,您可能希望尝试以下操作:

如果通过启动Activity2暂停ActivityOne,则可以在启动ActivityOne之前在ActivityOne中设置一个标志。然后在ActivityOne的onResume()中,您可以检查该标志,如果设置了该标志,请关闭滑块并重置该标志