首页 > 解决方案 > 尝试单击按钮时Android应用程序崩溃

问题描述

您好,我尝试在 kotlin 中编写一个刽子手游戏,但是当我单击按钮时应用程序崩溃。这可能是糟糕的 kotlin 语法之类的。Logcat 告诉我这个函数有错误

    private fun showLetter(char: Char) {
        val tv = tvWord.text.toString().toCharArray()
        for (i in tv.indices) {
            if (keyWord[i] == char) tv[i] = char
        }
        tvWord.text = String(tv)
    }

在这一行

if (keyWord[i] == char) tv[i] = char

标签: androidkotlin

解决方案


它必须是数组越界异常。

tv 大于关键字,因此当 i 太大时请求关键字 [i] 会触发错误。

根据您要执行的操作,在循环之前检查两个数组的长度,更改 i 变量递增的值,或者break在满足条件时更改循环。


推荐阅读