听所有活动

时间:2018-10-13 18:58:14

标签: java android

首先,我要谢谢你。为了您的宝贵时间。 我做了android应用程序。研究研究。但是我注意到了一些。我有很多活动。当事件发生时,我希望所有人都听。

很不幸,我已经了解了听众。 但是,侦听器是唯一的活动。

听音乐时,我需要向人们展示。

对不起,我的英语不好。 这就是我想要的。 活动 B活动 C活动 D活动 这些是我的活动。

B活动已执行。例如;播放了音乐。

其他人会听。

public void listen (int id, String method) {

// update activity layout
}

2 个答案:

答案 0 :(得分:0)

您可以使用listeners,但是由于这可能给您带来挑战,因此建议您使用shared preferences或Intent-putExtra()方法进行布局更新。

例如

您可以在活动A的共享首选项中保存一个值,当您从活动B更新该值时,该值将在整个应用程序中更改。

答案 1 :(得分:0)

听课活动样本 MainActivity

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
  LocalBroadcastManager.getInstance(this).registerReceiver(
                mMessageReceiver, new IntentFilter("listen_test"));
     }

  private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            // TODO Auto-generated method stub

            String content = intent.getStringExtra("content");
             //log content

           Log.e("tag", "listen: "+content,null );
        }
    };

其他活动测试发送listen_test

    Intent xx = new Intent("listen_test");

    xx.putExtra("content", "test content");
    LocalBroadcastManager.getInstance(this).sendBroadcast(xx);

如果活动暂停停止听吗?请插入MainActivity

 @Override
    protected void onPause() {
        LocalBroadcastManager.getInstance(this).unregisterReceiver(mMessageReceiver);

        super.onPause();

    }