关闭

一个activityA开启activityB,再跳回activityA的跳转与finish()

标签: activity
850人阅读 评论(0) 收藏 举报
分类:

解决:
1.两个不同的界面跳转,并跳回,跳转界面后不能被关闭
2.禁止且避免跳回上一个界面时,又开启一个activity
解决方法:
以登录为例
1.

 <activity
            android:name=".ui.personal.activity.PersonalActivity"
            android:configChanges="orientation|keyboardHidden|screenSize"
            android:screenOrientation="portrait"
            android:launchMode="singleTask"
            android:windowSoftInputMode="stateHidden|adjustResize"></activity>
        <activity

android:launchMode=”singleTask” 使用该启动模式,会保留一个此activity,不会再重新开启,如果以前打开存在过,当你需要的跳回该界面时,该界面就会从底层移到顶层
2.在个人中心打开登录

 case R.id.person_no_login_layout:
                Intent loginIntent = new Intent(PersonalActivity.this,
                        PersonalLoginActivity.class);
                startActivity(loginIntent);

3.在登录activity中重写onNewIntent()方法

 @Override
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        boolean success = intent.getBooleanExtra(PLATFORM, false);
        if (success) {
            finish();
        }
    }

该方法结合task模式使用

4.在登录界面选择QQ登录或微信登录

 Intent intent = new Intent(WXEntryActivity.this, PersonalLoginActivity.class);
                intent.putExtra(PersonalLoginActivity.PLATFORM, true);
                startActivity(intent);
  Intent intent = new Intent(QQLogingActivity.this, PersonalLoginActivity.class);
                intent.putExtra(PersonalLoginActivity.PLATFORM, true);
                startActivity(intent);
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:18265次
    • 积分:482
    • 等级:
    • 排名:千里之外
    • 原创:32篇
    • 转载:0篇
    • 译文:0篇
    • 评论:2条
    文章分类