当我从溢出菜单中单击logout时,它应该将MainActivity转到LoginActivity,但它会打开我尝试过的相同的MainActivity

时间:2015-09-04 12:26:59

标签: android android-intent android-activity

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    switch (id) {
        case R.id.action_logout:
            Intent intent = new Intent(MainActivity.this, LoginActivity.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            startActivity(intent);
            finish();
            break;
        case R.id.action_contacts:
            intent = new Intent(MainActivity.this, AddContact.class);
            startActivity(intent);
            break;
    }
    return super.onOptionsItemSelected(item);
}

当我从溢出菜单中单击logout时,它应该将MainActivity转到LoginActivity,但它会打开相同的MainActivity。 有什么帮助吗?

1 个答案:

答案 0 :(得分:0)

猜测你正试图关闭后台堆栈中的所有活动。试试这段代码。

 $quiz->title = Request::input('title');

这将清除所有先前打开的活动并启动LoginActivity。