Android Studio中Kotlin函数点击按钮无法修改TextView文本问题
问题根因
你的aufruf()函数默认是无返回值的Unit类型,仅将内容打印到Android Studio的Logcat控制台,你将它的返回值赋值给TextView时,实际设置的是Unit对应的字符串,自然不会显示你想要的装备列表内容。
修复步骤
1. 修改aufruf()函数,添加返回值
将原函数改为返回拼接好的装备列表字符串,代码如下:
// 指定返回值类型为String fun aufruf(): String { val items = mutableListOf<BisHunterMarksman>() items.add(BisHunterMarksman("Head", "Rattling Deadeye Hood", "The Necrotic Wake")) items.add(BisHunterMarksman("Necklace", "Trailspinner Pendant", "Mists of Tirna Scithe")) val contentBuilder = StringBuilder() for (element in items) { // 拼接每一行内容,末尾加换行符实现分行显示 contentBuilder.append("${element.itemSlot}\t${element.name}\t${element.itemsource}\n") } // 返回拼接完成的完整字符串 return contentBuilder.toString() }
2. 可选校验项
如果修改后点击按钮仍无变化,检查以下两处配置:
- 确认布局文件中Button控件的
android:id属性值为@+id/button,和MainActivity中findViewById的参数保持一致 - 如果你给
textView设置了maxLines、maxEms等限制显示的属性,暂时删除或者调大数值,避免内容被截断
3. 效果验证
修改完成后重新运行APP,点击按钮即可看到TextView替换为你拼接的装备列表内容。
内容的提问来源于stack exchange,提问作者ProAslan
相关产品推荐
相关产品推荐

