2015-11-12 89 views
0

我的主要活动是通过startActivityForResults调用第二个活动。我的第二个活动然后通过startActivityForResults调用第三个活动,但在此过程中我的第二个活动是finishes。现在第三项活动将会是finish,但需要通过setResult发回结果代码。我的第一个活动有onActivityResult方法,但从来没有收到任何东西或永远不会被调用。将第三个Android活动的结果返回到第一个活动

我在三项活动之间管理此问题时遇到问题。什么是最简单的方法来照顾这个?

回答

1

最简单的可能是使用Singleton类。

public class ResultHolder { 
    private String result; // Whichever result code you need to persist 
    public String getResult() {return result;} 
    public void setResult(String result) {this.result = result;} 

    private static final ResultHolder holder = new ResultHolder(); 
    public static ResultHolder getInstance() {return holder;} 
} 

在你的活动,职位结果代码:

ResultHolder.getInstance.setResult(whateverResultCode); 

在你的活动,接收结果代码:

String resultCode = ResultHolder.getInstance.getResult(); 

希望这有助于。

相关问题