我在使用findViewById(id)时遇到了一个奇怪的问题。即使资源肯定在那里,它也会返回资源未找到。它是布局中的一个文本视图,紧挨着另一个文本视图,其中一个文本视图我可以通过id找到,但另一个显示未找到资源。有没有可能发生这种情况的原因?
发布于 2011-10-11 22:46:53
尝试清理您的项目或发布一些代码。
如果您使用的是Eclipse,有时ID不会正确重新生成。这需要清理项目,有时还需要刷新项目。
发布于 2012-11-29 20:55:15
请确保您不是真的试图将文本设置为一个数字,并期望它自动转换为字符串。
发布于 2017-02-12 17:51:15
只是为了澄清Terra Caines的答案,因为我看到它在人们身上发生了很多次;TextView
和其他文本组件有2个setText()
函数和1个参数。
其中一个是String
,另一个是int。int
显然是针对像R.string.myString
这样的字符串资源的--对于那些不知道的人来说,R.exm
总是被表示为int
。字符串是用来把字符串放在那里的。
举个例子,我想把int x = 1;
放在一个textView中。执行mTextView.setText(x);
将导致textView使用resource函数,并且由于可能没有id为1的资源,它将抛出异常resource not found。如果您想在setText()函数中放入一个整数或任何数字,请确保将其转换为String
、(x+"")
或(x.toString())
。
希望它能为人们节省一些时间。
https://stackoverflow.com/questions/7727808
复制相似问题