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

Android Studio Kotlin实现按钮点击随机显示Yes/No功能求助

Kotlin实现点击按钮随机显示Yes/No的修正方案

原代码存在的问题

  • 未导入Kotlin的Random类,无法使用随机功能
  • Random的调用方式错误,没有正确语法直接随机选择两个字符串
  • buttonPressed函数定义在onCreate方法内部,布局文件中通过android:onClick绑定的点击事件无法找到该函数

修正后的完整代码

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_main.*
import android.view.View
import kotlin.random.Random

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

    // 移到类成员位置,让布局的点击事件能找到
    fun buttonPressed(view: View){
        // 创建候选字符串列表
        val options = listOf("yes", "no")
        // 随机获取列表中的一个元素
        val randomWord = options.random()
        textView.text = randomWord
    }
}

关键修改说明

  • 导入kotlin.random.Random:使用Kotlin标准库的随机工具类,无需依赖Android原生Random类
  • 将buttonPressed改为类成员函数:确保布局文件中通过android:onClick="buttonPressed"绑定按钮点击时,系统能正确找到该方法
  • 使用listOf("yes", "no").random():Kotlin简洁写法,直接从列表中随机选取元素;也可以用options[Random.nextInt(options.size)]实现相同效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 12:35:22