У мене ця проблема з Edittext в андроїд-студії. Додаток працює чудово, але програма виходить з ладу без введення даних
Ось код Java
public void onButtonClick (View v)
{
int num1,num2,sum;
EditText e1 = (EditText)findViewById(R.id.num1);
EditText e2 = (EditText)findViewById(R.id.num2);
TextView t1 = (TextView)findViewById(R.id.sum);
num1 = Integer.parseInt(e1.getText().toString());
num2 = Integer.parseInt(e2.getText().toString());
sum = num1 + num2;
t1.setText(Integer.toString(sum));
}
Відповіді:
1 для відповіді № 1Integer.parseInt()
не вдається, коли не вказано введення, обчислюйте лише за наявності вводу.
public void onButtonClick (View v)
{
int num1 = 0,num2 = 0,sum = 0;
EditText e1 = (EditText)findViewById(R.id.num1);
EditText e2 = (EditText)findViewById(R.id.num2);
TextView t1 = (TextView)findViewById(R.id.sum);
if(!(e1.getText().toString()).equals(""))
num1 = Integer.parseInt(e1.getText().toString());
if(!(e2.getText().toString()).equals(""))
num2 = Integer.parseInt(e2.getText().toString());
sum = num1 + num2 ;
t1.setText(sum.toString());
}
Ваша програма завершиться збоєм, якщо даний вхід не є числом.
Щоб зробити EditText, приймайте лише номери
У файлі xml використовуйте це
<EditText
android:inputType="number"
android:digits="0123456789."
/>