我想在成功尝试DashBoardActivity
之后启动LoginActivity
。我也想在登录后广播UserToken。但是我可以startActivity()
或sendBroadcast().
如果我在LoginActivity.kt
中使用了以下代码,则
btnLogin.setOnClickListener {
if(loginSuccess){
sendBroadcast(Intent("TEST"))
startActivity(Intent(this, DashboardActivity::class.java))
finish()
}
}
Dashboard Activity
将打开,但广播onReceive()
不起作用。请帮助我正确执行此任务。
DashBoardActivity.kt
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_dashboard)
registerReceiver(userDataChangeReceiver,
IntentFilter("TEST"))
}
private val userDataChangeReceiver = object: BroadcastReceiver() {
override fun onReceive(context: Context?, intent: Intent?) {
println("succeess!")
}
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_dashboard)
val userDataChangeReceiver = object: BroadcastReceiver() {
override fun onReceive(context: Context?, intent: Intent?) {
println("succeess!")
}
}
registerReceiver(userDataChangeReceiver,
IntentFilter("TEST"))
}
}