Java Button.findViewById vs Button=findViewById

Java Button.findViewById vs Button=findViewById,java,android-studio,kotlin,Java,Android Studio,Kotlin,嘿,伙计们,我是编程新手。在Android Studio中尝试一些东西(Kotlin) 我已经找过了,但没有找到答案按钮 我通常使用Button.findViewById(R.id.Button),但有时它会给我错误,我不得不像Button=findViewById(R.id.Button)那样编写 有人能告诉我区别在哪里(或什么?findViewById在调用此方法的视图中搜索具有给定Id的视图 因此,当您执行Button.findViewById(R.id.btn)时,它永远不会工作,因为B

嘿,伙计们,我是编程新手。在Android Studio中尝试一些东西(Kotlin) 我已经找过了,但没有找到答案<代码>按钮

我通常使用
Button.findViewById(R.id.Button)
,但有时它会给我错误,我不得不像
Button=findViewById(R.id.Button)那样编写


有人能告诉我区别在哪里(或什么?

findViewById在调用此方法的视图中搜索具有给定Id的视图

因此,当您执行
Button.findViewById(R.id.btn)
时,它永远不会工作,因为Button是一个类而不是视图的实例

当您执行myButton.findViewById(R.id.btn)
时,如果有一个视图具有btn has id,它会在myButton内部查找,这是视图的一个实例。如果有,则返回它,否则返回null


当您执行
findViewById(R.id.btn)
时,您可以直接从自定义视图代码内部调用此方法。通常是在活动中。然后,如果有一个视图具有btn has ID,它将在该活动的布局中查找。如果有,它将返回该视图,否则它将返回null。

对于kotlin:您不必使用findViewById。您可以使用直接id ex:
btnSave.text=“abc”
如果代码显示错误,请选择[
btnSave
],然后单击[
Alt+Enter
]以导入库。

可能重复的