我尝试了这段代码,但它只显示了最后一个字:
signButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String speech = "This code is sample";
String[] result = speech.split("\\s");
for (int x=0; x<result.length; x++) {
textView.setText(result[x]);
}
}
});
答案 0 :(得分:1)
好的,首先我花了很多时间来理解你仍然不确定的问题,根据我的理解,你想要在按钮点击的文本视图中添加下一个WORD。 。
要实现此目的,您可以使用以下代码。
//String Array preparation
String speech = "This code is sample";
String[] result = speech.split("\\s");
int count = 0;
signButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//check if array has more values to add or whatever you want to check
if(count<result.length){
if(count==0){
textView.append(result[count];
} else {
textView.append(" " + result[count];
}
count++;
}
}
});
答案 1 :(得分:0)
另一种方法 全局声明一个字符串var
String s="";
现在在你的代码中使用这个 在for循环中
s=s+""+result[x];
textView.append(s):
答案 2 :(得分:0)
textview将仅显示最后一个单词,因为它位于for循环中。设置每个单词后,下一次迭代将发生,因此,用户只能查看最后一个单词。您可以在特定时间后更改每个单词。请尝试以下代码。在这里,我给了每个单词5秒钟。
int x; //declare x as global variable
String speech = "This code is sample";
String[] result = speech.split("\\s");
textView.setText(result[0]);
for (x=1; x<result.length; x++) {
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
textView.setText(result[x]);
}
}, 5000);
}