Выберите код, который будет игнорироваться автоматическим отступом в Android Studio - PullRequest
0 голосов
/ 09 мая 2018

Могу ли я отформатировать код и попросить Android Studio не переформатировать его при запуске файла автоматического отступа?

Например, я мог бы захотеть структурировать свой код следующим образом:

returnFragment = when (questionKind) {

            QuestionKind.TEXT.int        -> GenericTextFragment.newInstance(question, pagerDelegate)  //TEXT = 0

            QuestionKind.FREE_TEXT.int   -> GenericTextFragment.newInstance(question, pagerDelegate)  //TEXTAREA = 1

            QuestionKind.CHECKBOX.int    -> SelectFragment.newInstance(question, pagerDelegate)       //CHECKBOX = 2

            QuestionKind.RADIO.int       -> SelectFragment.newInstance(question, pagerDelegate)       //RADIO = 3

            QuestionKind.IMAGE.int       -> ImagePickerFragment.newInstance(question, pagerDelegate)  //FILE = 4

            QuestionKind.NUMERICAL.int   -> GenericTextFragment.newInstance(question, pagerDelegate)  //NUMERICAL = 5

            QuestionKind.MULTISELECT.int -> SelectFragment.newInstance(question, pagerDelegate)       //MULTISELECT = 6

            QuestionKind.SELECT.int      -> SelectFragment.newInstance(question, pagerDelegate)       //SELECT = 7

            else                         -> GenericFragment.newInstance(question, pagerDelegate)      // CUSTOM
}   

Но как только я запускаю автоматический отступ (который запускается lint pre build), код возвращается к

returnFragment = when (questionKind) {

            QuestionKind.TEXT.int -> GenericTextFragment.newInstance(question, pagerDelegate) //TEXT = 0

            QuestionKind.FREE_TEXT.int -> GenericTextFragment.newInstance(question, pagerDelegate) //TEXTAREA = 1

            QuestionKind.CHECKBOX.int -> SelectFragment.newInstance(question, pagerDelegate) //CHECKBOX = 2

            QuestionKind.RADIO.int -> SelectFragment.newInstance(question, pagerDelegate) //RADIO = 3

            QuestionKind.IMAGE.int -> ImagePickerFragment.newInstance(question, pagerDelegate) //FILE = 4

            QuestionKind.NUMERICAL.int -> GenericTextFragment.newInstance(question, pagerDelegate) //NUMERICAL = 5

            QuestionKind.MULTISELECT.int -> SelectFragment.newInstance(question, pagerDelegate) //MULTISELECT = 6

            QuestionKind.SELECT.int -> SelectFragment.newInstance(question, pagerDelegate) //SELECT = 7

            else -> GenericFragment.newInstance(question, pagerDelegate) // CUSTOM
}

Неважно, чище это или нет. Есть ли способ сказать IDE игнорировать предопределенный код и форматировать только остальные?

1 Ответ

0 голосов
/ 09 мая 2018

Вы можете использовать следующее:

 // @formatter:off
...
...
<Code for which you want to turn off formatting>
...
...
// @formatter:on

см. https://www.jetbrains.com/help/idea/settings-code-style.html раздел "Управление форматтером" для получения дополнительной информации.

...