我想从另一个类的MainActivity类中调用扩展函数。 我该怎么办?
object MainActivity : AppCompatActivity() {
val StringBuilder.readHistory: StringBuilder
get() {
val temp = this@readHistory
temp.setLength(0)
try {
val file = InputStreamReader(MainActivity.openFileInput(MainActivity.getString(R.string.dosyaadı)))
val br = BufferedReader(file)
var line = br.readLine()
while (line != null) {
temp.append(line + "\n")
line = br.readLine()
}
br.close()
file.close()
} catch (e: Exception) {
e.printStackTrace()
}
return temp
}
答案 0 :(得分:0)
您不能在类外部调用此函数,因为它嵌套在此类内部,因此仅适用于该范围。
将扩展属性设为顶级(将其移至类之外)。
答案 1 :(得分:0)
Member extensions仅在声明它们的类中可见。但是,您可以将扩展函数放在类之外,以便能够在其他任何地方导入和使用它。