Je suis vraiment nouvelle en programmation. J'essaie d'utiliser une simple calculatrice moyenne et d'obtenir une force proche, c'est ce que montre le logcat. Je courais version studio Android 2.3.3Calculatrice moyenne Exception fatale
FATAL EXCEPTION: main
Process: com.vu.gradingapp, PID: 6312
java.lang.NumberFormatException: For input string: ""
at java.lang.Integer.parseInt(Integer.java:620)
at java.lang.Integer.valueOf(Integer.java:794)
at com.vu.gradingapp.AverageActivity$1.onClick(AverageActivity.java:37)
at android.view.View.performClick(View.java:6219)
at android.view.View$PerformClick.run(View.java:24482)
at android.os.Handler.handleCallback(Handler.java:769)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6540)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
Le code que je utilise est le suivant
public class AverageActivity extends AppCompatActivity {
EditText editmanner, editinstances, editshortstance, editstrikes, editboxingskills, editknocks, editkicks, editResults;
Button btnResults;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.average_page);
editmanner =(EditText)findViewById(R.id.editText8);
editinstances = (EditText)findViewById(R.id.editText9);
editshortstance = (EditText)findViewById(R.id.editText10);
editstrikes = (EditText)findViewById(R.id.editText11);
editboxingskills = (EditText)findViewById(R.id.editText12);
editknocks = (EditText)findViewById(R.id.editText13);
editkicks = (EditText)findViewById(R.id.editText14);
editResults = (EditText)findViewById(R.id.editText15);
btnResults = (Button) findViewById(R.id.button10);
btnResults.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
int first, second, third, fourth, fifth, sixth, seventh, results;
first=Integer.valueOf(editmanner.getText().toString());
second=Integer.valueOf(editinstances.getText().toString());
third=Integer.valueOf(editshortstance.getText().toString());
fourth=Integer.valueOf(editstrikes.getText().toString());
fifth=Integer.valueOf(editboxingskills.getText().toString());
sixth=Integer.valueOf(editknocks.getText().toString());
seventh=Integer.valueOf(editkicks.getText().toString());
results=(first+second+third+fourth+fifth+sixth+seventh)/7;
editResults.setText(String.valueOf(results));
}
});
}
public void knowtheresults (View view) {
String button_text;
button_text = ((Button) view).getText().toString();
if (button_text.equals("Summary")) {
Intent intent = new Intent(this, ResultActivity.class);
startActivity(intent);
} else if (button_text.equals("Back")) {
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
ce que je fais mal: D
Merci les gars
L'erreur indique que vous ne pouvez pas convertir la valeur '" "' en nombre. Donc, utilisez '0' à la place du nombre est vide. –
Je finis votre problème est que vous faites le 'Integer.valueOf()' sur une chaîne vide. – Ivan
Je vous suggère d'apprendre au moins les bases de Java avant de commencer avec Android, sinon vous aurez des problèmes comme ça tout le temps. – taurelas