Как добавить отдельный файл с функциями в Android Studio - PullRequest
1 голос
/ 01 апреля 2019

Я хотел бы иметь файл с некоторыми функциями, которые я могу добавить в свои проекты.Так что я могу просто добавить этот файл, а затем снова использовать те же вещи.

Я создал новый файл, добавил простую функцию и попытался запустить его в своей функции MainActivity.Mainactivity может «видеть» мою функцию, но приложение вылетает, как только запускается функция.Можно ли создать отдельный файл, подобный этому, и иметь доступ ко всем функциям, как если бы они были в моей MainActivity?

Просто для тестирования я сделал это:

MainActivity.kt

mToast("Its working", 0, 500)

funs.tk

package com.myname.app

import android.view.Gravity
import android.widget.Toast

fun mToast(t: String, x: Int, y: Int) {
    val toast = Toast.makeText(MainActivity().applicationContext, t, Toast.LENGTH_SHORT)
    toast.setGravity(Gravity.BOTTOM, x, y)
    toast.show()
}

1 Ответ

2 голосов
/ 01 апреля 2019

Вы не должны создавать новый экземпляр MainActivity в своей вспомогательной функции.Вместо этого передайте контекст в качестве параметра:

fun mToast(context: Context, t: String, x: Int, y: Int) {
    val toast = Toast.makeText(context, t, Toast.LENGTH_SHORT)
    toast.setGravity(Gravity.BOTTOM, x, y)
    toast.show()
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...