помогите разобратся с позиционированием в RelativeLayout

Интерфейс, диалоги, темы, стили, меню
Ответить
Gnojevik
Сообщения: 1
Зарегистрирован: 30 июн 2015, 23:20

помогите разобратся с позиционированием в RelativeLayout

Сообщение Gnojevik » 30 июн 2015, 23:37

Прошу помощи . Сразу скажу что я новичок и прошу тапками не бросать. Мне нужно рандомно перемещать картинку по екрану при нажатии на кнопку.
Перемещение должно происходить в RelativeLayout. вот фрагмент кода как я ето реализовал но проблема в том что перемещение происходит только в верхнем левом углу.

Код: Выделить всё

public void onClick(View v) {


        

        switch (v.getId()) {
            case R.id.imageFly:
                Log.d(TAG,"opridiljaem ID fly");

               
                Log.d(TAG,"New parametrs fly ");
                RelativeLayout.LayoutParams rell = new RelativeLayout.LayoutParams(50, 50);
                switch (random.nextInt(4)) {
                    case 0:                                                   // Перемещение в левом верхнем углу
                        rell.leftMargin=random.nextInt(150)+1;
                        rell.topMargin =random.nextInt(300)+1;
                        Log.d(TAG,"Left Top corner"+rell.leftMargin+"---"+rell.topMargin);
                        imageFly.setLayoutParams(rell);
                        break;
                    case 1:                                                   // Перемещение в правом верхнем углу
                        rell.rightMargin = random.nextInt(150)+1;
                        rell.topMargin = random.nextInt(300)+1;
                        Log.d(TAG,"Right Top corner"+rell.rightMargin+"---"+rell.topMargin);
                        imageFly.setLayoutParams(rell);
                        break;
                    case 2:                                                   // Перемещение в левом нижнем
                        rell.leftMargin = random.nextInt(150)+1;
                        rell.bottomMargin = random.nextInt(300)+1;
                        Log.d(TAG,"Left down corner"+rell.leftMargin+"---"+rell.bottomMargin);
                        imageFly.setLayoutParams(rell);
                        break;
                    case 3:                                                  // Перемещение в правом нижнем
                        rell.rightMargin = random.nextInt(150)+1;
                        rell.bottomMargin = random.nextInt(300)+1;
                        Log.d(TAG,"Right down corner"+rell.rightMargin+"---"+rell.bottomMargin);
                        imageFly.setLayoutParams(rell);
                        break;


                }
                break;
Log.d выводит сообщение вроде верно но картинка все равно перемещается только в левом верхнем углу

Ответить