如何完成当前活动并启动另一个活动?

时间:2016-06-16 06:46:26

标签: android android-activity

@Component
public class MyBeanClass{

    Boolean valid = false;

    public boolean isValidRequest(){
        //some code
    }

    //
    //Other piece of code
    //
}

这是启动活动方法:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);        
/**
     * Check for login session. If not logged in launch
     * login activity
     * */
    if (MyApplication.getInstance().getPrefManager().getUser() == null) {
        launchLoginActivity();
        Log.e(TAG, "Still im in MainActivity !!! ");
    }
 ....
 ....

该活动已启动,但我仍处于主要活动中。

正如您在控制台中看到的那样,会显示两条日志消息。

启动方法中的一个,以及调用启动方法后主活动中的另一个。

如何完成主要活动而不在主要活动中显示日志消息?

The error

2 个答案:

答案 0 :(得分:2)

退出onCreate()后,您的主要活动最终会完成。在您的主要活动onDestroy()中添加一些调试日志记录,您将看到您进入该活动。 如果您想在调用第二个活动后跳过所有内容,那么只需在此之后添加return。 还有Activity.isFinishing() API,如果您的活动正在完成,则返回true。

答案 1 :(得分:-1)

好吧,完成()有问题的活动,然后返回,以便开始活动突破' onCreate'方法和活动通过正常的生命周期被破坏。

if (MyApplication.getInstance().getPrefManager().getUser() == null) {
    launchLoginActivity(); //the finish part already happens here. I did not see that.
    return;
    Log.e(TAG, "Still im in MainActivity !!! ");
}
相关问题