2013-08-22 2 views
0

Я пытаюсь создать простую прикладную программу для Android, которая может добавить два номера, но она сбой, как только я нажимаю кнопку добавления. Пожалуйста, найдите код ниже. Эмулятор использует 300 МБ ОЗУAndroid Application Crash on button event

у меня есть два editboxes, в котором числа были введены одновременно и их сумма отображается на третьем поле ввода, нажав на кнопку добавления

package example.sample; 


import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 

public class MainActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    Button b=(Button)findViewById(R.id.close); 
    b.setOnClickListener(new View.OnClickListener() 
    { 

     @Override 
     public void onClick(View v) 
     { 

       EditText E1=(EditText)findViewById(R.id.editText1); 
       EditText E2=(EditText)findViewById(R.id.editText2); 
       EditText E3=(EditText)findViewById(R.id.editText3); 
       String s=E1.toString(); 
       String m=E2.toString(); 
      // String k="sud"; 
       int num1=Integer.parseInt(s); 
       int num2=Integer.parseInt(m); 
       int num3 =num1+num2; 
       String f=Integer.toString(num3); 
       E3.setText(f); 


     } 

     }); 




} 


@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 

ответ

3

изменения

String s=E1.toString(); 
String m=E2.toString(); 

-

String s=E1.getText().toString(); 
String m=E2.getText().toString(); 

для получения текста с помощью кнопки EditText на кнопке Click. в настоящее время вы пытаетесь проанализировать View как целое

+1

Я бы также предложил некоторые проверки ошибок с помощью 'try/catch' или что-то, чтобы предотвратить попытку разбора не-' – codeMagic

0
String s=E1.getText().toString(); 
String m=E2.getText().toString(); 

Вы не выполняете операцию добавления чисел. Вот почему ваше приложение рушится.