0

2 つの数字を追加できる単純な Android アプリケーションを作成しようとしていますが、追加ボタンを押すとすぐにクラッシュします。以下のコードを見つけてください。エミュレーターは 300 MB RAM を使用します

数字が入力されている2つの編集ボックスがあり、追加ボタンをタップして3番目の入力ボックスに合計が表示されています

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;
}
4

2 に答える 2

3

変化する

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

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

ボタンのクリック時に EditText からテキストを取得するため。現在、ビューを整数として解析しようとしています

于 2013-08-22T18:53:01.070 に答える
0
String s=E1.getText().toString();
String m=E2.getText().toString();

数値の加算演算を実行していません。そのため、アプリがクラッシュしています。

于 2013-08-22T18:54:53.717 に答える