![](/img/trans.png)
[英]NullPointerException when access TextView's setText method
[英]Undefined method setText() when chaining findViewById() for TextView
我想知道是否有人可以告诉我原因:
TextView textblock = (TextView) findViewById(R.id.label).setText("Google is your friend.", TextView.BufferType.EDITABLE);
我收到未定义的方法错误(此类型的视图的setText未定义)。 但是当我不链接时有效,例如:
TextView textblock = (TextView)findViewById(R.id.label);
textblock.setText("Google is your friend.", TextView.BufferType.EDITABLE);
(我知道这是一个非常基本的问题,但是我是Java新手,无法在搜索中找到任何内容)
由于附加括号,您需要在转换结果上调用该方法:
((TextView) findViewById(R.id.label)).setText("Google is your friend.", TextView.BufferType.EDITABLE);
也就是说,引入变量会使代码更具可读性。 我会这样做。
还要注意, setText()
返回void,而不是TextView。 因此,您无法像尝试那样使用setText()
的结果初始化TextView变量。
setText()
的类型为void
因此它不返回任何内容,这意味着您不能存储在变量中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.