Есть ли какие-нибудь варианты, чтобы сделать некоторые детские макеты подвижными, а некоторые нет - PullRequest
0 голосов
/ 10 мая 2019

Я использую Relative Layout и много кнопок в нем. Я хочу сделать некоторые кнопки макета подвижными, а некоторые нет во время OnTouch ACTION_MOVE

            switch (event.getAction()) {

                case MotionEvent.ACTION_DOWN:

                    dX = view.getX() - event.getRawX();
                    dY = view.getY() - event.getRawY();
                    break;

                case MotionEvent.ACTION_MOVE:

                    view.animate()
                            .x(event.getRawX() + dX)
                            .y(event.getRawY() + dY)
                            .setDuration(0)
                            .start();
                    break;

Мне почему-то не нужны мои кнопки вне макета

Когда я перемещаю макет, все кнопки двигаются, потому что находятся внутри него, но я не хочу, чтобы все двигались, с некоторыми словами, как заблокировать кнопку?

Есть ли варианты?

1 Ответ

0 голосов
/ 10 мая 2019

Вы можете проверить идентификатор вида, чтобы перемещать только определенные виды.

    case MotionEvent.ACTION_MOVE:

            if (view.getId() == R.id.viewIWantToMove) {
                view.animate()
                    .x(event.getRawX() + dX)
                    .y(event.getRawY() + dY)
                    .setDuration(0)
                    .start();

            }    
            break;
...