使用 textwatcher 滚动的 textview 问题
Issue with textview Scrollable with textwatcher
我有一个文本视图和一个编辑文本。当在编辑文本中输入内容时,它应该计算并显示结果,这里会有更多结果,对于编辑文本中的输入,我们将得到大约 8 到 10 个输出。
我用过,
android:scrollbars = "vertical"
并在 activity、
output = (TextView) findViewById(R.id.textView);
output.setMovementMethod(new ScrollingMovementMethod());
和我的逻辑,
public void onTextChanged(CharSequence s, int start,
int before, int count) {
String subunit = categorySpinner.getSelectedItem().toString();
if (subunit.equals("sad")) {
Double ip = Double.valueOf(input.getText().toString());
Double a = ip * 0.01;
output.setText(String.valueOf(a) + " " + "sdf"+"\n");
Double b = ip * 31;
output.setText(String.valueOf(b) + " " + "Sdsf"+"\n");
Double c = ip * 21;
output.setText(String.valueOf(c) + " " + "dfd"+"\n");
Double f = ip * 2.47105;
output.setText(String.valueOf(f) + " " + "df"+"\n");
......
......
......
Double z = ip * dfg;
output.setText(String.valueOf(f) + " " + "last output+"\n");
}
}
但我在文本视图中只得到最后一个输出值,而不是所有输出字段,这里有什么遗漏吗?
而不是 setText()
试试 append()
:
output.append(yourText);
append()
将 追加 文本到现有缓冲区。
我有一个文本视图和一个编辑文本。当在编辑文本中输入内容时,它应该计算并显示结果,这里会有更多结果,对于编辑文本中的输入,我们将得到大约 8 到 10 个输出。
我用过,
android:scrollbars = "vertical"
并在 activity、
output = (TextView) findViewById(R.id.textView);
output.setMovementMethod(new ScrollingMovementMethod());
和我的逻辑,
public void onTextChanged(CharSequence s, int start,
int before, int count) {
String subunit = categorySpinner.getSelectedItem().toString();
if (subunit.equals("sad")) {
Double ip = Double.valueOf(input.getText().toString());
Double a = ip * 0.01;
output.setText(String.valueOf(a) + " " + "sdf"+"\n");
Double b = ip * 31;
output.setText(String.valueOf(b) + " " + "Sdsf"+"\n");
Double c = ip * 21;
output.setText(String.valueOf(c) + " " + "dfd"+"\n");
Double f = ip * 2.47105;
output.setText(String.valueOf(f) + " " + "df"+"\n");
......
......
......
Double z = ip * dfg;
output.setText(String.valueOf(f) + " " + "last output+"\n");
}
}
但我在文本视图中只得到最后一个输出值,而不是所有输出字段,这里有什么遗漏吗?
而不是 setText()
试试 append()
:
output.append(yourText);
append()
将 追加 文本到现有缓冲区。