我需要将数据从活动传递给班级。我使用接口,但是初始化有问题。
我的课:
class Methods {
fun processingResponse(finalMessage: String) {
var mcontext: Context? = null
var message : Message = Message()
var access = "Access Granted"
var out = "Logged"
var Stateconnect = false
var safetyCheck = 0
if (access in finalMessage) {
val msg = finalMessage.split("=", ":")
accessLevel = msg[0]
sessionId = msg[1].toInt()
safetyCheck = msg[2].toInt()
var namePlc = msg[3]
interfaceData.sendData("Connect")
//Stateconnect = true
} else if (out in finalMessage) {
interfaceData.sendData("Disconnect")
println("log out okey")
}
}}
我的界面:
interface SendDataInterface {fun sendData(str: String )}
和我的活动:
class LoginIn : AppCompatActivity(), SendDataInterface {
override fun sendData(str: String)
{
var handler = Handler(Looper.getMainLooper())
handler.post( Runnable() {
fun run() {
buttonChange(str)
}
})} fun buttonChange(str : String) {
if (str == "Connect") {
Connection.setBackgroundColor(Color.RED)
Connection.setText("Disconnection")
loadMaintenancePage()
} else if (str == "Disconnect") {
Connection.setBackgroundColor(Color.GREEN)
Connection.setText("Connection")
}
}
}
我的错误是接口未初始化。 我如何初始化接口?
答案 0 :(得分:0)
您必须在方法类中创建一个SendDataInterface实例。
答案 1 :(得分:0)
var interfaceData:SendDtaInterface = Object:SendDtaInterface { 重写fun sendData(“ Connect”){
}
}
interfaceData.sendDat(“ connect”)enter code here