所以我有两个EditText和一个TextView, 这两个EditText是Number格式,我用它来比较大于或小于...的两个。对于TextView,这是我放置输出的位置。 我的问题是,当我在编辑文本中输入数字时,Textview中没有任何更改。
下面是我的代码:
@Override
protected void onCreate(Bundle savedInstanceState)
{
etnumb_one= findViewById(R.id.etnumb_one);
etnumb_two= findViewById(R.id.etnumb_two);
tvOutput= findViewById(R.id.tvOutput);
tvOutput.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) { }
@Override
public void afterTextChanged(Editable s)
{
tvOutput.setText(getOutput());
}
});
}
下面是我在onCreate之外的方法
public String getOutput()
{
int first = Integer.parseInt(etnumb_one.getText().toString());
int second= Integer.parseInt(etnumb_two.getText().toString());
String output;
if(first > second)
{
output= Integer.toString(first) + " : " + Integer.toString(second);
}
else
{
output= Integer.toString(first) + " : " + Integer.toString(second);
}
return output;
}
我只想在textview中查看输出。谢谢!
答案 0 :(得分:0)
您要在TextWatcher
上添加TextView
,而不要在EditText
上添加。
代替
tvOutput.addTextChangedListener
使用:
etnumb_one.addTextChangedListener