Android Kotlin Activity已经注册为什么找不到?问题解决

初识Kotlin,赶紧来体验一把,愉快的写了下面的代码,准备跳转到另外一个界面

fun goMain(view: View) {
        var intent = Intent(this, ListActivity.javaClass)
        startActivity(intent)
    }

运行一下却给我崩溃了.日志为:

  Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.imgod.testkotlinandroid/com.example.imgod.testkotlinandroid.ListActivity$Companion}; have you declared this activity in your AndroidManifest.xml?
                                             

看了配置文件三次 明明都是注册了的啊,怎么运行起来就崩溃了呢?好生奇怪

赶紧百度一下.看别人的代码,发现只要把代码修改为:

 fun goMain(view: View) {
        var intent = Intent(this, ListActivity::class.java)
        startActivity(intent)
    }

这个时候程序就畅行无阻了

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,这里提供一个简单的示例代码,可以记录开始日期和结束日期,并计算卡路里消耗。 首先,我们需要在 Android Studio 中创建一个新的 Kotlin 项目。在 `MainActivity.kt` 文件中添加以下代码: ```kotlin import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import kotlinx.android.synthetic.main.activity_main.* import java.text.SimpleDateFormat import java.util.* class MainActivity : AppCompatActivity() { private var startDate: Date? = null private var endDate: Date? = null private var calories: Int = 0 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // 设置按钮点击事件 startButton.setOnClickListener { // 记录开始日期 startDate = Date() // 显示开始日期 startDateTextView.text = SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()).format(startDate) } endButton.setOnClickListener { // 记录结束日期 endDate = Date() // 显示结束日期 endDateTextView.text = SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()).format(endDate) // 计算卡路里消耗 calculateCalories() } } private fun calculateCalories() { // 假设每天消耗 2000 卡路里 val caloriesPerDay = 2000 // 计算日期差值 val diff = endDate?.time?.minus(startDate?.time ?: 0) // 计算天数 val days = diff?.div(1000 * 60 * 60 * 24) // 计算消耗的卡路里 calories = (days ?: 0) * caloriesPerDay // 显示消耗的卡路里 caloriesTextView.text = calories.toString() } } ``` 这里我们使用了一个 `startDate` 变量和一个 `endDate` 变量来记录开始日期和结束日期。当用户点击开始按钮时,我们会记录当前日期作为开始日期,并在 UI 中显示出来。当用户点击结束按钮时,我们会记录当前日期作为结束日期,并计算出两个日期之间相差的天数,然后根据每天消耗的卡路里数来计算出总共消耗的卡路里数,并在 UI 中显示出来。 请注意,在示例代码中,我们使用了 `SimpleDateFormat` 类来格式化日期,使用了 `kotlinx.android.synthetic.main.activity_main.*` 来引用 UI 中的元素。如果您对这些内容不太熟悉,可以先学习一下 KotlinAndroid 开发的基础知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值