首页 > 解决方案 > 在页面干净地消失的android中单击通知后的向导?

问题描述

我有 3 页

我有这篇文章在技术上按要求工作,但现在我变得更加清晰,导致了一个后续问题。

所需的后退按钮行为

单击通知时用户在页面 A 上时的期望行为

如果用户根本不在我的应用程序中,则期望的行为

在回答了那个问题之后,我修改了我的代码以在按钮单击页面 B 时调用完成,但这会使页面消失。我想我需要延迟 B 页上的调用完成。 我想当用户单击 C 页上的 10 分钟按钮时我想。

finish();
previousActivity.finish();

这是错误的方法吗?以及如何获取上一个活动,以便我可以将其调用完成下一个活动,以便他可以调用它?还是我的想法全错了?

编辑:我确实找到this post了,但现在只进入 android 一周就很神秘了。任何人都有关于这些东西的教程的链接?也许我需要一本书来进行更深入的研究。

标签: androidandroid-studio

解决方案


最简单的方法是你应该使用 B -> C 的 startActivityForResult

案例一:不需要手柄

案例 2 & 3:你处理十分钟如下

tenMinutes.setOnClickListener(new View.OnClickListener()
   {
        @Override
        public void onClick(View v)
        {
            Intent returnIntent = new Intent();
            returnIntent.putExtra("result", 1);
            setResult(Activity.RESULT_OK,returnIntent);
            finish();
        }
    });

现在在 B :

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        if (requestCode == REQUEST_CODE) {
            if(resultCode == Activity.RESULT_OK){
                int result = data.getIntExtra("result", 0);
                if (result == 1)
                    finish();
            }
        }
    }

您也可以使用其他解决方案示例:对页面 C 使用片段或对话框等


推荐阅读