导入kotlinx.android.synthetic.main.activity\u main不工作
导入kotlinx变灰 我想我几乎什么都试过了。重新安装Android Studio,无效缓存,新项目同样存在问题 我就是找不到解决办法,你能试试吗导入kotlinx.android.synthetic.main.activity\u main不工作,android,android-studio,kotlin,import,android-gradle-plugin,Android,Android Studio,Kotlin,Import,Android Gradle Plugin,导入kotlinx变灰 我想我几乎什么都试过了。重新安装Android Studio,无效缓存,新项目同样存在问题 我就是找不到解决办法,你能试试吗 文件|使缓存无效/重新启动 删除.idea文件夹 干净的 重新导入项目 或只需删除应用插件:“kotlin android extensions”,同步gradle插件,然后我又添加了一个。简单的朋友,你忘记了星号 module gradle apply plugin: 'kotlin-android' apply plugin: 'kot
- 文件|使缓存无效/重新启动
- 删除.idea文件夹
- 干净的
- 重新导入项目
或只需删除
应用插件:“kotlin android extensions”
,同步gradle插件,然后我又添加了一个。简单的朋友,你忘记了星号
module gradle
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
dependencies {
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
}
project gradle
buildscript{
ext.kotlin_version = '1.3.11'
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
import kotlinx.android.synthetic.main.activity_main.*
这件事发生在我身上。检查“build.gradle(:app)”文件
如果缺少kotlin扩展,请添加kotlin android扩展
,如下所示,然后单击“立即同步”
这为我解决了这个问题:
对我来说,只是在应用程序的build.gradle中添加了
apply插件:“kotlin android extensions”
,按下sync-gradle文件,我就可以得到合成的
id 'kotlin-android-extensions'
id 'kotlin-android'
删除插件并添加两个插件。
id“kotlin android扩展”
id“kotlin android”
应该加上。重新启动项目
因此,正如我所发现的那样,问题在于gradle插件,然后你需要重新启动,重建你的项目。合成物现在被谷歌弃用。尽量避免使用它们,因为这可能会导致空指针异常和应用程序上的意外行为 阅读更多关于:
来自官方开发者网站。希望这有助于。。。可能与从布局中获取视图的新方法有关 科特林:
android{viewBinding.enabled = true
...
}
binding.btn1.setOnClickListener{...}
或
注意:将gradle module.app与行同步后,您将发现任何具有相同名称+绑定的活动
查看2.1参考资料这里有一个逐步的答案:
- 在Android studio的右侧,单击
Gradle
- 右键单击应用程序,然后单击打开渐变配置
- 在
部分中打开新源代码,然后添加以下内容:插件
id'kotlin android extensions'
- 轻触
sync
kotlinx.android.synthetic.main.activity\u main.*
在build.gradle(:app)
中,添加:
buildFeatures {
viewBinding true
}
在main活动中
:
私有lateinit变量绑定:ActivityMainBinding
在创建时修改:
override-fun-onCreate(savedInstanceState:Bundle?){
super.onCreate(savedInstanceState)
绑定=活动主绑定。充气(更平)
setContentView(binding.root)
setListeners()
}
要设置侦听器,请执行以下操作:
/**
*将侦听器附加到所有视图。
*/
私人娱乐设置侦听器(){
val可单击视图:列表=
列表(
binding.view1,
binding.view2,
// ...
)
对于(可单击视图中的项目){
item.setOnClickListener{…}
}
}
Kotlin Android Extensions已折旧。请迁移到Jetpack视图绑定。请参阅以下内容:
您是否将项目转换为androidx?对我来说,问题发生在这之后。我将其添加到我的文件中,但其变灰,并显示“未使用的导入指令”你试过运行你的应用程序吗?unused简单地说,它还没有被使用,当你在你的类中使用一些id时,它将被使用。当我尝试向我的类添加id时,导入行消失了,这非常奇怪。非常感谢你,我不知道如何工作,但现在它正在工作删除。idea文件夹对我有效,我认为它开始发生是因为我切换了分支和因为我不知道该怎么做,所以答案对我来说是有效的(应用插件:“kotlin android extensions”)&在无效缓存/重启之后就是这样。这对我来说是有效的。这是有效的。我认为新的android Studio 4.1版本上有一个bug,在项目创建时排除了扩展。这对我来说也是有效的!
binding.btn1.setOnClickListener{...}
binding.txtviewTitle.text = "Welcome to the jungle" // or any R.string
buildFeatures {
viewBinding true
}