如何在Kotlin中编写扩展函数?
我只是想将我的正常function转换为Kotlin的扩展function。
这是我的function,
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,然后选择Convert parameter to receiver 。
结果是:
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) } } }
- 如何从Kotlin中的列表中删除distinctBy的重复对象?
- Java 8 lambda到kotlin lambda
- 我怎样才能混淆我的编码与kotlin的sdk(并摆脱元数据)
- 什么是合法的方式来通过反射获得纯Kotlin财产的注释,他们总是失踪?
- Gradle项目的自动库版本更新当前不受支持。 请手动更新您的build.gradle
- 回复新的应用程序安装
- 在IntelliJ中如何改变Kotlin的'这个属性有一个后台'代码编辑器突出显示?
- Android Dagger 2.11与Kotlin,ContributesAndroidInjector注解问题
- Jpa Specification来查找字段值的子集