Kotlin @Deprecated ReplaceWith изменить функцию на присвоение переменной - PullRequest
0 голосов
/ 27 октября 2018

У меня есть следующее расширение функции, которое я хочу объявить устаревшим

fun <T : View> T.setVisible(visible: Boolean) {
    visibility = if (visible) View.VISIBLE else View.GONE
}

Устаревшее использование:

myTextView.setVisible(true)

Новое использование:

myTextView.isVisible = true

I'mпопытка написать выражение @Deprecated ReplaceWith, которое автоматически исправит это устаревание.Я попробовал следующее, но, похоже, это не работает:

@Deprecated("Use Android KTX isVisible", replaceWith = ReplaceWith("isVisible = visible", "androidx.core.view.isVisible"))
fun <T : View> T.setVisible(visible: Boolean) {
    visibility = if (visible) View.VISIBLE else View.GONE
}

Когда я нажимаю Alt + ENTER в myTextView.setVisible (true) и выбираю «Заменить на isVisible = visible» во всплывающем окне,он просто удаляет мой устаревший код

Существует ли выражение ReplaceWith, которое я могу использовать для автоматического исправления своего кода (изменение вызова функции на присвоение)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...