为我的机器人制作一个简单的应用程序。
在我的xml界面中有一个文本框,用户将在其中输入一个数字(例如:10)。此文本框的ID为“input1”
如何在java中调用input1的值然后对其进行计算?
例如......
假设input1 = x
x + 5或x * 2
就此而言,如何将结果值显示为UI上指定位置的不断更新的文本输出?
答案 0 :(得分:4)
在使用此布局XML的Activity
中,您可以这样做:
private EditText input;
private EditText result;
public void onCreate(Bundle b) {
setContentView(R.layout.my_activity);
// Extract the text fields from the XML layout
input = (EditText) findById(R.id.input1);
result = (EditText) findById(R.id.result);
// Perform calculation when input text changes
input.addKeyListener(new View.OnKeyListener() {
public boolean onKey(View v, int keycode, KeyEvent keyevent) {
if (keyevent.getAction() == KeyEvent.ACTION_UP) {
doCalculation();
}
return false;
}
});
}
private void doCalculation() {
// Get entered input value
String strValue = input.getText().toString;
// Perform a hard-coded calculation
int result = Integer.parseInt(strValue) * 2;
// Update the UI with the result
result.setText("Result: "+ result);
}
请注意,上述内容不包含错误处理:它假定您已限制input1
文本字段以仅允许输入整数。
答案 1 :(得分:3)
在XML中,您还可以将android:inputType="number"
设置为仅允许数字作为条目。