Кotlin и Android - видимость функции из другого файла, а не MainActivity
некоторые функции хочу поместить в отдельный файл MyFunc.kt, а не в MainActivity.kt. Как сделать так, чтобы функции из MyFunc.kt можно было выбирать в конструкторе кнопок Design и вешать на свойство OnClick?
Ответы (1 шт):
Автор решения: Vadik
→ Ссылка
Пусть файл MyFunc.kt с функцией hello() лежит в пакете com.example.utils:
package com.example.utils
fun hello() {
println("Привет")
}
Чтобы использовать эту функцию в MainActivity.kt, сделаем импорт этой функции:
package com.example
import com.example.utils.hello
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
...
val button = findViewById(...)
button.setOnClickListener {
hello()
}
}
}
В одном файле может находится сразу несколько функций, каждую нужно импортировать отдельно. Если имя пакета совпадает с текущим, то функцию можно не импортировать.