2011-11-02 2 views
0

나는 앱을 가지고 있으며 편집 텍스트를 계산하려고합니다. 이 코드가 있습니다Android - edittext에서 텍스트를 가져 와서 계산하는 방법

package com.minimale.cijfer; 

import android.app.Activity; 
import android.os.Bundle; 
import android.text.InputType; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 

import com.minimale.cijfer.R; 

public class main extends Activity { 
    /** Called when the activity is first created. */ 
     EditText gehaald_een; 
     EditText gehaald_twee; 
     EditText gehaald_drie; 
     EditText gehaald_een_weging; 
     EditText gehaald_twee_weging; 
      EditText gehaald_drie_weging; 
     EditText nieuw; 
     EditText nieuw_weging; 
     EditText finalResult; 


    OnClickListener radioGroup; 


    double een; 
    double twee; 
    double drie; 
    double vier; 
    double een_c; 
    double twee_c; 
    double drie_c; 
    double nieuw_c; 
    double weging_t; 
    double answer; 


    Button addButton; 
    Button divideButton; 
    Button multiplyButton; 
    Button subtractButton; 
    Button final_calculation; 


    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     gehaald_een = (EditText)findViewById(R.id.editText1); 
     gehaald_twee = (EditText)findViewById(R.id.editText2); 
     gehaald_drie = (EditText)findViewById(R.id.editText3); 
     gehaald_een_weging = (EditText)findViewById(R.id.editText4); 
     gehaald_twee_weging = (EditText)findViewById(R.id.editText5); 
     gehaald_drie_weging = (EditText)findViewById(R.id.editText6); 
     finalResult = (EditText)findViewById(R.id.answer); 

     nieuw = (EditText)findViewById(R.id.editText7); 
     nieuw_weging = (EditText)findViewById(R.id.editText8); 


     divideButton =(Button)findViewById(R.id.button1); 
     divideButton.setOnClickListener(new DivideButtonHandler()); 




    } 


    private class DivideButtonHandler implements OnClickListener{ 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      een = Double.parseDouble(gehaald_een_weging.getText().toString()); 
      twee = Double.parseDouble(gehaald_twee_weging.getText().toString()); 
      drie = Double.parseDouble(gehaald_drie_weging.getText().toString()); 
      vier = Double.parseDouble(nieuw_weging.getText().toString()); 
      een_c = Double.parseDouble(gehaald_een.getText().toString()); 
      twee_c = Double.parseDouble(gehaald_twee.getText().toString()); 
      drie_c = Double.parseDouble(gehaald_drie.getText().toString()); 
      nieuw_c = Double.parseDouble(nieuw.getText().toString()); 
      weging_t = Double.parseDouble(nieuw_weging.getText().toString()); 


      answer = ((een + twee + drie + vier) * nieuw_c - ((een_c * een) + (twee *    twee_c))/weging_t); 
      finalResult.setText(answer + ""); 

     } 

    } 



} 

을하지만 버튼에 내 응용 프로그램을 실행하고있는 글고 상자를 작성 누르면, 내 응용 프로그램 강제 종료합니다. 아무도 내가 뭘 잘못했는지 알아?

+1

finalResult.setText(answer + ""); 

교체 Logcat 출력에 나타나는 stacktrace? –

+0

@Graham Borland 나는 지금 내가 어떻게 볼 수있는, 내 PC에 이클립스와 2 일 우분투가 있고 그것은 윈도우 이클립 – Gromdroid

+0

ur ur main.xml과 다릅니다. 내가 뭔가를 잘못 했어야했다. 나는 ur 코드를 사용했기 때문에 나에게 잘 돌아갔다. logcat 출력을 보려면 ur cmd 프롬프트에서 adb logcat 명령을 실행하십시오. http://developer.android.com/guide/developing/tools/adb.html#logcat – Rohit

답변

2

사용

Double.valueOf(String s); 

대신

Double.parseDouble(); 

또한 무엇이며

finalResult.setText(Double.toString(answer) + ""); 
+0

아직 작동하지 않지만 계속 강제 종료 – Gromdroid

관련 문제