Java 在Android中将触摸事件从重叠活动传递到底层活动

Java 在Android中将触摸事件从重叠活动传递到底层活动,java,android,Java,Android,我创建了一些活动,当一些不同的应用程序打开时,这些活动是透明的。我的活动开始并在该活动之上打开(Intent.FLAG\u activity\u NEW\u TASK) 我试图实现的是,在我的活动中发生的动作将反映到其他活动中。我的意思是,当我向下滚动时,参考底图视图将滚动 我不能这样做,我使用了一些标志组合,但它不起作用 我不能同时通过这两项活动。它只在一个视图下工作,我需要做在顶部(透明)活动上发生的事情,底层活动必须得到相同的事件 Window window = getWindow();

我创建了一些活动,当一些不同的应用程序打开时,这些活动是透明的。我的活动开始并在该活动之上打开(Intent.FLAG\u activity\u NEW\u TASK)

我试图实现的是,在我的活动中发生的动作将反映到其他活动中。我的意思是,当我向下滚动时,参考底图视图将滚动

我不能这样做,我使用了一些标志组合,但它不起作用

我不能同时通过这两项活动。它只在一个视图下工作,我需要做在顶部(透明)活动上发生的事情,底层活动必须得到相同的事件

 Window window = getWindow();
        window.addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);
        window.addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE);
        // window.addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);
        window.addFlags(WindowManager.LayoutParams.FLAG_SPLIT_TOUCH);
        // window.addFlags(WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH);
        //window.addFlags(WindowManager.LayoutParams.TYPE_PHONE);


        setContentView(R.layout.trans);


        final View v = getWindow().getDecorView().findViewById(android.R.id.content);

        v.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View view, MotionEvent motionEvent) {

                Log.i("TAG", View !!!!!!!!");


                return false;
            }
        });

这是不可能的。您既不能向其他应用程序的活动中插入输入事件,也不能接收它们的输入事件(称为tapjacking)。

触摸事件无法做到这一点,我也不确定您为什么要这样做


也就是说,您可以使用或,但这是一个非常糟糕的主意,在一个活动中捕获触摸事件,然后传递给另一个活动。

我可以使用EventBus lib吗?可以,但您必须尝试它的性能(因为触摸事件的频率),您将在一个活动中使用EventBus.post,在另一个活动中使用EventBus.register,我也不会真的推荐它