0

我有一个自定义视图,其中有一个滑块。从视图内部,我在 onSomeSlideDistance 启动了一个活动。所以我的设计是ActivityOne => ListView => Adapter => CustomView => [sliding: intent] => ActivityTwo。现在我的问题是这样的:

当滑动动作启动 ActivityTwo 时,我需要它保持打开(即滑动)直到 ActivityTwo 启动之后。但是,如果用户单击完成() ActivityTwo,当控制返回到 ActivityOne 时,我需要重置滑块。我该如何做到这一点?

我试过什么?

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

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

在某些时候,我还尝试了从 CustomView 中的新线程中延迟运行;以便它在 ActivityTwo 启动后运行,然后我得到关于只有活动可以更改其视图的错误。

4

1 回答 1

0

覆盖 onActivityResult() 的 startActivityForResult() 听起来正是您所需要的,但如果您已经尝试过,您可能想试试这个:

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

于 2013-10-16T18:57:46.147 回答