用Kotlin完成另一个Android的活动
我试图用kotlin完成另一个(android)的活动。 我知道用java做的wat是用下面的代码( https://stackoverflow.com/a/10379275/7280257 )
第一次活动:
BroadcastReceiver broadcast_reciever = new BroadcastReceiver() { @Override public void onReceive(Context arg0, Intent intent) { String action = intent.getAction(); if (action.equals("finish_activity")) { finish(); // DO WHATEVER YOU WANT. } } }; registerReceiver(broadcast_reciever, new IntentFilter("finish_activity"));
在其他活动上:
Intent intent = new Intent("finish_activity"); sendBroadcast(intent);
出于某种原因,将java活动转换为kotlin不会提供有效的输出,如果有人可以给我正确的语法来正确使用kotlin,我会感激
kotlin输出(第一个活动) [确定] :
val broadcast_reciever = object : BroadcastReceiver() { override fun onReceive(arg0: Context, intent: Intent) { val action = intent.action if (action == "finish_activity") { finish() // DO WHATEVER YOU WANT. } } } registerReceiver(broadcast_reciever, IntentFilter("finish_activity"))
kotlin输出(第二个活动) [确定]
val intent = Intent("finish_activity") sendBroadcast(intent)
错误: http : //i.imgur.com/qaQ2YHv.png
修正:所显示的代码是正确的,你只需要把它放在onCreate函数中
Expecting member declaration
是错误的,因为你在一个类中写了一个语句(函数调用)。 在这个范围内,声明(函数,内部类)是预期的。
你必须把你的语句放在函数中(然后从某个地方调用这些语句),以便执行它们。
- 我可以使用Java Scripting API作为脚本运行kotlin吗?
- 在@Transactional方法调用期间,初始化期间Bean属性不为null变为null
- Android ClassNotFoundException在路径上找不到类:DexPathList
- 如何在Java Project中使用Kotlin编写的MailChimp包装器
- 当我将它导出到可运行jar文件时,kotlin出现Javafx错误
- 在apk中使用Kotlin构建DuplicateFileException
- Kotlin:指定的types参数会导致Gson失败
- 如何将此代码从iOS Swift转换为Android Kotlin
- 在没有JVM支持的情况下,如何在JVM语言中实现协程?