Android:当窗口管理器上的视图添加时,消耗触摸事件设置为false

时间:2017-01-19 02:21:06

标签: java android

我尝试在所有活动甚至主页上添加动态图像。 所以我使用窗口管理器来实现这一点。 我需要这个图像是部分可触摸的。但无论我在onTouch上设置返回true还是false。它仍然消耗触摸事件。

    params.type = WindowManager.LayoutParams.TYPE_SYSTEM_ALERT;
    params.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE|WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM;
    params.format = PixelFormat.RGBA_8888;
    params.width = 200;
    params.height = 200;
    params.gravity = Gravity.LEFT;
    params.x = 200;
    params.y = 000;
    btnView.setOnTouchListener(new View.OnTouchListener() {
        int lastX, lastY;
        int paramX, paramY;

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            switch (event.getAction()) {
                case MotionEvent.ACTION_DOWN:
                    lastX = (int) event.getRawX();
                    lastY = (int) event.getRawY();
                    paramX = params.x;
                    paramY = params.y;
                    break;
                case MotionEvent.ACTION_MOVE:
                    int dx = (int) event.getRawX() - lastX;
                    int dy = (int) event.getRawY() - lastY;
                    params.x = paramX + dx;
                    params.y = paramY + dy;
                    windowManager.updateViewLayout(btnView, params);
                    break;
            }
            return false;
        }
    });

0 个答案:

没有答案