如何在startActivity()之后停止mainActivity(rootTask);

时间:2017-02-01 00:41:50

标签: java android

我的应用程序从MainActivity.Java开始,这意味着这是root任务。

我还有一项活动是A。

当我使用startActivity()进行lauch A活动时,我想停止MainActivity(rootTask);

在A类用尽之前,我不希望MainActivity工作。

结束();不管用 意图标志不起作用 noHistory:没有用 startActivityForResult(intent,0)无法正常工作

我该怎么办?

修改

MainActivity:

if (AccessToken.getCurrentAccessToken() == null) {
    Intent intent = new Intent(this, LoginActivity.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);
}

System.out.println("test");

在这里,我想等。它不应该显示“test”。

LoginActivity:

LoginButton loginButton = (LoginButton) findViewById(R.id.login_button);
callbackManager = CallbackManager.Factory.create();
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
    @Override
    public void onSuccess(LoginResult loginResult) {
        Intent intent = new Intent(this, MainActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(intent);
    }

2 个答案:

答案 0 :(得分:0)

请发布您的代码 如果您只想完成当前活动并开始新活动,请执行此操作。完成必须工作。

startActivity(new Intent(CurrentAcitivity.this,NextActivity.class);
CurrentActivity.this.finish();

答案 1 :(得分:0)

MainActivity stackoverflow方法应编码为停止您要停止的 thing

如果你这样做,那么你应该在onStop()中提出启动 thing 的逻辑。