为什么在这句话中会出现编译错误?
this.message.setMessage(R.string.game_over);
错误信息:
The method setMessage(String) in the type Messages is not applicable for the arguments (int)
我想使用字符串文件中存在的 res 中的字符串。我知道 arg 是int
,但这是我在网站上阅读的方式
int 是一个资源ID。您必须获取 ID 代表的字符串:
this.message.setMessage(getResources().getString(R.string.game_over));
该方法setMessage
期望收到一个String
. 但是,您发送的是一个整数。
更具体地说,您正在向它发送整数,它是字符串的资源键。要获得所需的字符串,您需要执行以下操作:
Context myContext = getApplicationContext();
this.message.setMessage(myContext.getString(R.string.game_over));