【问题标题】:Display a Sequence of Numbers in Android TextView在 Android TextView 中显示数字序列
【发布时间】:2015-08-23 17:07:13
【问题描述】:
我希望在我创建的 TextView 字段中显示一系列数字,但调用该方法后只显示一个数字。如何修复它以显示所有数字?
例如:
Display = (TextView) findViewById(R.id.Sequence);
for(i=0; i<10; i++){
Numbers[i] = random.nextInt(10)+1;
Display.setText(Numbers[i]+" ");
}
我的猜测是它正在显示所有数字,但只显示最后一个带有空格的数字。无论如何,我希望所有 10 个数字都出现在同一行。我该怎么做呢?
【问题讨论】:
标签:
java
android
random
textview
【解决方案1】:
Display.setText(Display.getText() + " " + Numbers[i]);
它可能会抛出 NullPointerException,因为第一次将没有任何内容可用于 Display.getText();
所以加Display.setText(""); before loop.
【解决方案2】:
在获得完整字符串后,您应该只调用一次setText()。这应该有效:
Display = (TextView) findViewById(R.id.Sequence);
StringBuilder sb = new StringBuilder();
for(i=0; i<10; i++) {
Numbers[i] = random.nextInt(10)+1;
if (sb.length() > 0) {
sb.append(' ');
}
sb.append(Numbers[i]);
}
Display.setText(sb.toString());