android-studio - 找不到按钮、kotlin 库的参考
问题描述
在这里输入图片描述我只有这个:
package com.example.world
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
button.setOnClickListener() {
// Do some work here
}
}
}
但在这一行:
button.setOnClickListener() {
// Do some work here
}
它说:
Unresolved reference: button
而且我没有看到重要的正确库的提示。
那么我必须导入什么样的库呢?
谢谢
如果我这样做:
val btn_click = findViewById(R.id.button) as Button
btn_click.setOnClickListener(){
Toast.makeText(this@MainActivity, "YOu clicked on me", Toast.LENGTH_LONG).show()
}
然后它工作。
但这不一定是我读过的。
您不必对按钮进行引用。
所以你可以这样做:
button.setOnClickListener ...但是正确的库是什么?
解决方案
您不能使用“抽象”按钮,您需要通过元素 id 在布局中找到它(您的布局中可以有很多按钮,如何在没有 id 的情况下找到正确的按钮?)如果您不想找到布局元素通过 id,您可以在此处查看 Android 视图绑定:https ://developer.android.com/topic/libraries/view-binding 。
推荐阅读
- c - 使用 SDL2 更改纹理上某些像素的颜色
- sql - 根据最后 3 个条目计算
- r - 为什么 withCallingHandlers 还是会报错?
- mysql - 联接表为空时,联接 SQL 不起作用
- php - 我如何在表单类型类中获取连接的用户数据而不恢复其他用户(例如城市)的所有数据
- c# - Sql Exeption:列名“NormalizedUserName”无效
- groovy - 如何在 IF 控制器和 While 控制器中使用 JMeter 属性
- python - 通过 map 函数根据唯一 ID 将数据从 1 个数据集复制到另一个数据集
- sql - 为什么 STIntersects 返回 0?
- github - github 可以根据单个 repo 项目创建一个项目吗?