我正面临着DataBindingUtil.setContentView()的问题。它显示了以下错误。
[类型推断失败:没有足够的信息在setContentView中推断参数T(p0: Activity,p1: Int):T!请明确说明。
我的代码:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// setContentView(R.layout.activity_home) var binding =
DataBindingUtil.setContentView(this, R.layout.activity_home)
} 有人帮我解决这个错误。我也做过清洁和Rebuild(Invalidate and Restart)。
请告诉我其他的建议。
发布于 2019-02-06 06:49:12
使用:
var binding : ActivityHomeBinding = DataBindingUtil.setContentView(this, R.layout.activity_home)DataBindingUtil.setContentView返回作为参数传入的特定布局文件的绑定。
发布于 2019-02-06 06:41:43
创建这样的绑定对象。
val binding: ActivityMainBinding = DataBindingUtil.setContentView(
this, R.layout.activity_main)您必须提到活动绑定类型。我有主要的活动,所以绑定类型是ActivityMainBinding。这就是你错过的。
应该是这样的:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_home)
var binding : ActivityMainBinding =
DataBindingUtil.setContentView(this, R.layout.activity_home)
} 发布于 2019-02-06 06:26:28
顺便说一句,在Android #JustKidding中,无效和重新启动并不是唯一的解决方案。)
对于所面临的错误,实际上需要指定View:
val listViewEmployees = findViewById(R.id.listViewEmployees)
作为ListView到
val listViewEmployees = findViewById<ListView>(R.id.listViewEmployees)
https://stackoverflow.com/questions/54547721
复制相似问题