首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >kotlin -解决DataBindingUtil.setContentView()中的错误

kotlin -解决DataBindingUtil.setContentView()中的错误
EN

Stack Overflow用户
提问于 2019-02-06 06:20:52
回答 7查看 7K关注 0票数 9

我正面临着DataBindingUtil.setContentView()的问题。它显示了以下错误。

[类型推断失败:没有足够的信息在setContentView中推断参数T(p0: Activity,p1: Int):T!请明确说明。

我的代码:

代码语言:javascript
运行
复制
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)

请告诉我其他的建议。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2019-02-06 06:49:12

使用:

代码语言:javascript
运行
复制
var binding : ActivityHomeBinding = DataBindingUtil.setContentView(this, R.layout.activity_home)

DataBindingUtil.setContentView返回作为参数传入的特定布局文件的绑定。

票数 6
EN

Stack Overflow用户

发布于 2019-02-06 06:41:43

创建这样的绑定对象。

代码语言:javascript
运行
复制
 val binding: ActivityMainBinding = DataBindingUtil.setContentView(
        this, R.layout.activity_main)

您必须提到活动绑定类型。我有主要的活动,所以绑定类型是ActivityMainBinding。这就是你错过的。

应该是这样的:

代码语言:javascript
运行
复制
override fun onCreate(savedInstanceState: Bundle?) { 
  super.onCreate(savedInstanceState) 
  setContentView(R.layout.activity_home)
  var binding : ActivityMainBinding = 
  DataBindingUtil.setContentView(this, R.layout.activity_home) 
} 
票数 1
EN

Stack Overflow用户

发布于 2019-02-06 06:26:28

顺便说一句,在Android #JustKidding中,无效和重新启动并不是唯一的解决方案。)

对于所面临的错误,实际上需要指定View:

val listViewEmployees = findViewById(R.id.listViewEmployees)

作为ListView到

val listViewEmployees = findViewById<ListView>(R.id.listViewEmployees)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54547721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档