Android Studio中Kotlin实现点击按钮改文本出现空指针崩溃问题
问题根因
报错触发的核心原因是:点击事件回调的view参数是你点击的Button控件本身,TextView和Button是布局内的平级控件,在Button的子层级中找不到R.id.textView,因此view.findViewById<TextView>(R.id.textView)返回null,调用setText时触发空指针异常。
修复方案
有两种简单的修复方式,二选一即可:
方案1:直接使用已导入的Kotlin合成视图绑定
你已经在代码顶部导入了kotlinx.android.synthetic.main.activity_main.*,可以直接通过布局内的控件ID访问对应实例,无需手动调用findViewById:
fun One(view: android.view.View) { textView.text = "Hello" }
方案2:从Activity上下文查找TextView
如果需要手动调用findViewById,改为调用Activity本身的查找方法,不要用点击事件传入的view查找:
fun One(view: android.view.View) { val onetext = findViewById<TextView>(R.id.textView) onetext.text = "Hello" }
内容的提问来源于stack exchange,提问作者dizzysylveon
相关产品推荐
相关产品推荐

