4 回答
TA贡献2012条经验 获得超12个赞
player是一个int,所以在这种情况下你不需要一个toString方法:
String text = "Player " + player + " wins!";
另外,删除该public String toString()方法,因为您可能对默认Activity.toString()方法有问题....
TA贡献1859条经验 获得超6个赞
你使用它的toString()方式,你的活动类的方法被调用,
这就是你看到的原因com.ellis.newdice.MainActivity$1。
你不需要toString()达到你想要的。
用这个:
String text = "Player " + winner + " wins!";
winner使用您在代码中为获胜玩家使用的变量(整数?)进行更改。
TA贡献1850条经验 获得超11个赞
看起来你调用它的对象实际上不是你的MainActivity,而是它内部的一些匿名内部类,可能是一些听众。您可能必须将调用替换MainActivity.this.toString()为明确toString()要调用的内容。
更一般地说toString(),它不是一种通常被显式调用的方法。当您让其他代码为您调用它时,它非常有用。例如String s = "foo " + something将隐式调用toString()(something假设它是一个对象而不是一个String)。
TA贡献1831条经验 获得超4个赞
尝试以下操作:
String text = "Player " + String.valueOf(player) + " wins";
toString 方法是不必要的。String.valueOf(int number) 将获取您的整数值(获胜的玩家)并将其转换为可以显示在 Toast 中的字符串。
添加回答
举报
