【问题标题】:Android Notification.Builder addAction PendingIntent FragmentAndroid Notification.Builder addAction PendingIntent 片段
【发布时间】:2015-11-24 10:39:33
【问题描述】:

我有一个包含 4 个片段(A、B、C 和 D)的 mainActivity。如果 Fragment B 是一个音频播放器,它允许在后台播放音频,并在操作栏中放置一个正在播放音频的 Notification,然后用户通过抽屉导航到 Fragment C;如果用户转到他们的主屏幕然后向下滑动以进入通知,并单击没有应用程序通知,我会在 mainActivity 中捕获什么,以便当应用程序返回到前台时它会切换到片段 B?

【问题讨论】:

    标签: android notifications fragment


    【解决方案1】:

    您可以在意图中添加额外的内容来描述要打开哪个片段。
    例如,如果您希望打开 B,您可以这样做

    Intent intent = new Intent(this, MyActivity.class);
    intent.putExtra("fragment_name", "B");
    PendingIntent pendingIntent = PendingIntent.getActivity(this, 0,
                        intent,
                        PendingIntent.FLAG_ONE_SHOT);
    

    然后使用

    在您的活动中获取额外内容
    getIntent().getStringExtra("fragment_name");
    

    【讨论】:

    • 谢谢@Niko Yuwono;我在哪里可以捕捉到 getIntent?这是在 MainActivity 的 onResume 中,然后我会重新创建 B 片段和 Intent 吗?
    • 是的,我认为您可以在 MainActivity 的 onResume 中捕获它并在那里进行 Fragment 事务
    • 谢谢@Niko Yuwono;但是,当我仍在 onResume 中执行片段时,我遇到了崩溃。
    • 对不起@Niko Yuwono,错误是未初始化的变量。你的代码有效!谢谢!
    • @justdan0227 很高兴我能帮上忙!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多