对于AndroidStudio,我正在创建一个简单的转换应用程序,允许您将公里数转换为英里数,反之亦然。我可以通过点击按钮进行转换,但是你会如何实时进行转换呢?例如,当我输入数字时,它会立即将其转换为不同的文本框。
这是我为我的按钮创建的onClick方法的代码:
public void onClick(View vw){
EditText value = (EditText)findViewById(R.id.editText);
double total = Double.parseDouble(value.getText().toString()) * 0.621371192;
TextView obj = (TextView)findViewById(R.id.milesDisplay);
obj.setText(Double.toString(total));
obj.setVisibility(View.VISIBLE);
}
答案 0 :(得分:3)
如果您使用的是EditText,则可以执行此操作:
mEditText.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) {
// Every time you hit a number, capture the number and convert it
}
@Override
public void afterTextChanged(Editable s) {
}
});
在 onTextChanged 内,每次敲击键盘时都会触发一个侦听器。强制它只接受数字。