gpt4 book ai didi

android - 使用 backstack 启动 Activity

转载 作者:太空宇宙 更新时间:2023-11-03 11:55:23 24 4
gpt4 key购买 nike

我正在尝试启动一项 Activity ,同时正确维护一个后退堆栈以允许用户使用后退按钮。为此,我正在关注 Google 的 instructions。 ,但我无处可去。当我点击我的按钮时,没有任何反应(日志输出除外)。我需要做什么才能使这次发布成为下一个 Activity ?

        mBtnNext.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {

Log.d(TAG, "click");

Intent intent = new Intent(ProfileSelectActivity.this, PermissionsRequestActivity.class);

PendingIntent pendingIntent =
TaskStackBuilder.create(ProfileSelectActivity.this)
// add all of DetailsActivity's parents to the stack,
// followed by DetailsActivity itself
.addNextIntentWithParentStack(intent)
.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);

NotificationCompat.Builder builder = new NotificationCompat.Builder(ProfileSelectActivity.this);
builder.setContentIntent(pendingIntent);
}
});

在我看来,末尾少了一行。我已经尝试了 startActivities();startActivity(); 等等,但我的所有尝试都没有成功。

感谢您的帮助。

编辑

正在尝试实现以下来自 njzk2 的建议,但我仍然感到困惑。为了将 startActivities() 添加到 TaskStackBuilder 行的末尾,我必须删除对 PendingIntent 的任何分配。这可能没问题。但是,在下一个 Activity 开始后,如果我点击后退按钮,我只会看到一个白屏。

TaskStackBuilder.create(ProfileSelectActivity.this)
.addNextIntentWithParentStack(intent)
.startActivities();

我还注意到,当通过后退按钮返回时,我在父 Activity 中的 onResume 方法没有被调用,所以这可能只是恢复状态的问题???

最佳答案

您正在做的是创建(而不是显示)通知。 (正如通知生成器所建议的那样。)

如文档中所示,您需要做的是调用 startActivities():

TaskStackBuilder.create(ProfileSelectActivity.this)
.addNextIntentWithParentStack(intent)
.startActivities();

关于android - 使用 backstack 启动 Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38361901/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com