Android TaskStackBuilder

  activity_Intent = new Intent(this, MainPlayActivity.class);
        activity_Intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
        TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
        stackBuilder.addParentStack(MainPlayActivity.class);
        stackBuilder.addNextIntent(activity_Intent);
        PendingIntent openActivity = stackBuilder.getPendingIntent(5, PendingIntent.FLAG_UPDATE_CURRENT);
  <activity
            android:name=".localmodule.ui.MainPlayActivity"
            android:screenOrientation="portrait"
            android:launchMode="singleTask">
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".indexmodule.IndexActivity" />
        </activity>

如上我通过代码创建了一个带返回主界面功能的TaskStackBuilder 对象,但是当我通过点击notification触发这个PendingIntent时,它能够打开MainPlayActivity,然后按返回键也能够打开IndexActivity 但是每次返回到IndexActivity时都会刷新界面,请问如何才能在返回IndexActivity时不刷新界面或者数据。
PS:效果就像网易云音乐那样,当点击通知栏打开主播放界面(有黑胶唱片的那个界面)然后按手机返回键返回到网易云音乐主界面 ,但是主界面并不会再次刷新

阅读 3.3k
2 个回答

不更新UI?

IndexActivity 也需要设置 singleTask 属性.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题