Как написать функции расширения в Котлин?

Я просто хочу преобразовать свою нормальную функцию в функцию расширения в Котлине.

Вот моя функция,

fun hideKeyboard(activity: Activity) { if (activity != null) { activity.window?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_SATE_HIDDEN) val view: View = activity.currentFocus if (true) run { val imm = activity.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager imm.hideSoftInputFromWindow(view.windowToken, 0) } } } 

Вы даже можете сделать это с помощью автоматического рефакторинга, предоставляемого IDE: поместите курсор на параметр, который вы хотите преобразовать в приемник, нажмите Alt + Enter и выберите « Преобразовать параметр в приемник» .

Результат:

 fun Activity.hideKeyboard() { if (this != null) { // Note: this check is redundant, since the type is not-null window?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_SATE_HIDDEN) val view: View = currentFocus if (true) run { val imm = getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager imm.hideSoftInputFromWindow(view.windowToken, 0) } } } 
Intereting Posts