Подтвердить что ты не робот

Как перемещать (вверх/вниз) строки кода в студии Android?

В eclipse мы используем Alt + / для перемещения строки вверх или вниз.

Есть ли какой-нибудь ярлык в студии Android? Или любой быстрый способ избежать копирования и вставки?

4b9b3361

Ответ 1

Чтобы переместить линию:

Поместите каретку на линию, которую нужно переместить.

Выполните одно из следующих действий:

В главном меню выберите Code | Move Line Up or Code | Move Line Down Code | Move Line Up or Code | Move Line Down Code | Move Line Up or Code | Move Line Down.

Нажмите Shift + Alt + Up или Shift + Alt + Down.

Ответ 2

Если вам нужно точное поведение затмения, вы можете это сделать:

File → Settings → Keymap → Code → Folding → присвойте Alt + / значение " Переместить линию вверх/вниз" вместо < Move Statement вверх/вниз "

Ответ 3

В Android Studio есть (как минимум) два вида перемещения вверх/вниз: "умный" и "тупой". Как сказал IngoAlbers, тупой (Shift + Alt + <Arrow>) просто перемещает линию.

Использование Ctrl + Shift + <Arrow> делает функциональность более интеллектуальной:

  • Это не покидает текущий "контекст":

    public static void test() {
        int i = 5;
        Runnable theodor = new Runnable() {
            public void run() {
                System.out.println("Hi!");
            }
        };
    }
    

    Перемещение int я = 5; линия вниз на один шаг, приносит вам это:

    public static void test() {
        Runnable theodor = new Runnable() {
            public void run() {
                System.out.println("Hi!");
            }
        };
        int i = 5;
    }
    
  • Он держит методы вместе:

    public static void hello() {
        System.out.println("Hello!");
    }
    
    public static void dinner() {
        System.out.println("Dinner ready!");
    }
    
    public static void sleep() {
        System.out.println("Good night.");
    }
    

    Перемещение строки public static void sleep() { вверх на один шаг передвигает весь метод sleep() выше dinner():

    public static void hello() {
        System.out.println("Hello!");
    }
    
    public static void sleep() {
        System.out.println("Good night.");
    }
    
    public static void dinner() {
        System.out.println("Dinner ready!");
    }
    
  • В большинстве случаев это просто раздражает. ;-)