Живой шаблон не работает в Котлине

Надеюсь, вы работали с Live Templates, который предоставляется Android по умолчанию.

Подобно:

Generate debug log statement: "logd"+TAB Generate error log statement: "loge"+TAB Generate info log statement: "logi"+TAB Generate TAG declaration: "logt"+TAB Generate parameter logging: "logm"+TAB Generate method return log: "logr"+TAB 

введите описание изображения здесь

Которое он недоступен в КОТЛИНЕ ?

Не доступно ли это в версии для Android Studio 3.0 Canary ?

    Тем не менее, не добавлен шаблон журнала в разделе « Шаблоны сайтов Kotlin Live» в Android Studio.

    Настройки -> Редактор -> Живые шаблоны -> Kotlin для шаблонов kotlin .

    Шаблоны kotlin

    Настройки -> Редактор -> Живые шаблоны -> AndroidLog для шаблонов AndroidLog

    Шаблоны AndroidLog ,

    Таким образом, вы не можете получить те же шаблоны AndroidLog в коде Kotlin.

    Итак, теперь вопрос : как использовать те же функции журнала с использованием шаблонов в Котлине ?

    Ан: Вы можете добавить те же шаблоны журналов (шаблоны AndroidLog) в разделе Шаблоны Kotlin в студии Android, как показано ниже.

    Раздел шаблонов Kotlin

    Тогда он будет доступен в вашем коде Kotlin!

    Котлинский лог

    Надеюсь, таким образом вы сможете получить преимущество шаблонов функций журнала в Котлине.

    Вот пошаговое руководство:

    Во-первых , скопируйте и вставьте шаблоны AndroidLog в Kotlin (просто выберите их и используйте CMD + C, CMD + V (или Ctrl + C, Ctrl + V)
    Во-вторых , вы должны настроить их вручную:

    1. logd (loge, logv и др.) Выберите элемент logd и нажмите «Редактировать переменные», введите описание изображения здесь

    Изменить выражение: kotlinMethodName () введите описание изображения здесь Также удалите ; от конца шаблона, так как он вам не нужен в Котлине.

    Теперь ваше имя метода будет показано правильно

    1. logt

    Это немного сложнее.
    Решение 1: TAG = имя класса.

    Текст шаблона:

     private val TAG = "$className$" 

    Редактировать переменные -> Выражение:

     groovyScript("_1.take(Math.min(23, _1.length()));", kotlinClassName()) 

    Решение 2: TAG = имя файла (может использоваться внутри Companion)

    Текст шаблона:

     private const val TAG = "$className$" 

    или:

     companion object { private const val TAG = "$className$" } 

    Редактировать переменные -> Выражение:

     groovyScript("_1.take(Math.min(23, _1.length()));", fileNameWithoutExtension()) 

    Вам не нужно копировать все, как указано в других ответах. Найдите текст «Применимо в *» в разделе « Живые шаблоны » в Android Studio – нажатие кнопки «Изменить» дает список всех областей. Выберите Kotlin (или один из его дочерних узлов) и примените. Обратите внимание, что некоторые инструкции из Java не будут работать в Kotlin (например, те, которые используют статическое ключевое слово). Лучше создать для них новый шаблон, а не редактировать существующий.

    введите описание изображения здесь

    Вот репозиторий, который содержит все шаблоны для Android-Kotlin.

    Все, что вам нужно сделать, это загрузить репозиторий, скопировать каталог шаблонов и вставить его в папку конфигурации Android Studio.

    Конфигурационную папку для Android Studio можно найти по адресу

     Windows: C:\Users\%userName%\.AndroidStudio<version>\config\templates Linux: ~AndroidStudio<version>/config/templates macOS: ~/Library/Preferences/AndroidStudio<version>/templates