Kotlin BaseNodeProvider()如何转跳到Activity
Kotlin 如何 Activity
2023-09-14 09:14:00 时间
Kotlin BaseNodeProvider()如何转跳到Activity
我写的代码如下:
class StatisticsNodeProvider() : BaseNodeProvider() {
......
val intent = Intent(xxx, StatisticsActivity::class.java)
startActivity(intent)
......
}
我想把当前“xxx”转跳到一个Activity,xxx怎么写
我在百度找到了一个小问题:
说是必须要先获取Application中的Context,Context是上下文的
解决:
改代码如下:
class MyApplication : Application() {
companion object {
lateinit var instance: MyApplication
lateinit var context: Context
}
override fun onCreate() {
super.onCreate()
instance = this
context = applicationContext
}
}
现在我来理解一下上面这块代码
Application类继承到MyApplication
然后在companion object中定义一个context变量,重写父类的onCreat()方法,然后调用applicationContext方法给context赋值,所以必须要先获取的Application中的Context
在AndroidManifest.xml中修改默认的Application为我们的MyApplication类,这样系统初始化时就会初始化MyApplication而不是Application
<application
android:name="com.demo.test.MyApplication"//添加这一句
android:allowBackup="true"
...
改代码如下,BaseNodeProvider()可以转跳到Activity
val intent = Intent(MyApplication.context, StatisticsActivity::class.java)
context?.startActivity(intent)//context?的意思是context != null
第二种方法点击↓↓↓
Kotlin 特殊的registerActivityLifecycleCallbacks+一个非Activity转跳到另一个Activity
相关文章
- 数据透视表上线!如何在纯前端实现这个强大的数据分析功能?
- Kotlin 学习笔记(三)
- android Kotlin int类型和Long类型转换
- Kotlin 1.4 来了!全新语言特性和更多改进
- 大人,时代变了!使用 Java 16 或 Kotlin 更好的进行插件或模组开发
- Kotlin(Java)与Golang的椭圆曲线密钥交换算法
- kotlin函数汇总
- Kotlin安卓开发学习(3)
- Java 近期新闻:MicroProfile 6.0、Kotlin 1.8、Spring Framework 升级
- 【开发环境】Android 命令行中执行 Java 程序 ( IntelliJ IDEA 中创建 Java / Kotlin 工程 | dx 打包 DEX 字节码文件 | dalvikvm 命令 )
- 【Kotlin】标准库函数 ① ( apply 标准库函数 | let 标准库函数 )
- 【Kotlin】类的初始化 ① ( 成员属性 | Kotlin 自动为成员字段生成 getter 和 setter 方法 | 手动设置成员的 getter 和 setter 方法 | 计算属性 )
- 【Kotlin】类的初始化 ④ ( lateinit 延迟初始化 | ::属性名称.isInitialized 检查属性是否初始化 | lazy 惰性初始化 )
- 【Kotlin】扩展函数 ① ( 扩展函数简介 | 为 Any 超类定义扩展函数 | private 私有扩展函数 | 泛型扩展函数 | 标准函数 let 函数是泛型扩展函数 )
- Google 力挺 Kotlin,这是怎么回事!