You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

《Kotlin首个Android应用》教程:点击Random按钮应用崩溃求助

问题原因分析

崩溃的核心原因是countString.toInt()抛出了NumberFormatException——当textview_first的文本无法被解析为整数时,这个转换操作就会触发崩溃。

你提到点击Random按钮时崩溃,大概率是两种情况:要么是你此前点击过Count按钮修改了TextView文本,后续导航到第二个Fragment再返回时,Fragment恢复状态后textview_first的文本变成了非合法整数;要么是你混淆了操作按钮,实际是点击Count按钮时崩溃,但误记为Random按钮(毕竟Random按钮的点击逻辑只是导航,本身不会直接触发countMe函数)。

修复方案

有两种可靠的解决方式:

  1. 初始化TextView为合法数字
    在fragment_first.xml布局文件中,将textview_first的android:text属性直接设置为"0",确保初始文本是可转换为整数的内容。

  2. 添加安全转换逻辑
    修改countMe函数,用安全转换替代直接强转,避免异常:

    private fun countMe(view: View) {
        val showCountTextView = view.findViewById<TextView>(R.id.textview_first)
        val countString = showCountTextView.text.toString()
        // 转换失败时默认从0开始计数
        var count = countString.toIntOrNull() ?: 0
        count++
        showCountTextView.text = count.toString()
    }
    

内容的提问来源于stack exchange,提问作者Harry37

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 08:12:27