【问题标题】:Android studio - MainActivity.kt cant access id [duplicate]Android Studio - MainActivity.kt 无法访问 id [重复]
【发布时间】:2021-02-20 11:17:06
【问题描述】:

无法访问 mainActivity.kt 中的 id 属性 我努力了 : 1. 在构建菜单上清理项目 2. 在构建菜单上重建项目 3. FILE->使缓存失效并重启

<Button
        android:id="@+id/decidebtn"
        style="@style/Widget.AppCompat.Button.Borderless.Colored"
        android:layout_width="407dp"
        android:layout_height="56dp"
        android:background="@color/black"
        android:text="Decide!"
        android:textColor="@color/white"
        android:textSize="18sp"
        app:backgroundTint="@color/teal_700"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent" />



import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle

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

    decidebtn.setOnClickListener{

    }


}

}

【问题讨论】:

    标签: android kotlin


    【解决方案1】:

    基于 google document 已弃用

    不推荐使用 Kotlin Android 扩展,这意味着不再支持使用 Kotlin 合成器进行视图绑定。

    使用 View Binding 代替 Kotlin 合成

    【讨论】:

      【解决方案2】:

      如果您想在代码中访问小部件,则需要在 build.gradle 文件中启用数据绑定:

       dataBinding {
          enabled = true
      }
      

      您需要在 XML 中定义布局标签,并在 JAVA 中定义以下代码:

      class MainActivity : AppCompatActivity() {
         override fun onCreate(savedInstanceState: Bundle?) {
         super.onCreate(savedInstanceState)
        MainActivityBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
      
       }
      

      【讨论】:

        【解决方案3】:

        别忘了加app/build.gradle:

        apply plugin: 'kotlin-android-extensions'
        

        然后在MainActivity文件中导入布局包

        是的,kotlin 合成已被弃用,但在一个小项目中仍然足够好

        【讨论】:

          【解决方案4】:

          我认为你应该导入你的 XML 文件 (XML path.activity_main*)

          【讨论】:

            猜你喜欢
            • 2022-01-03
            • 1970-01-01
            • 1970-01-01
            • 2021-02-16
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2023-03-23
            相关资源
            最近更新 更多