마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

spinner 값 변경시

0 추천

public void onButton20Clicked(View v) {
    double num3 = F1; //f의 단위
    double num4 = T1; //t의 단위
    double num5 = X1; //x의 단위
    double num2 = V1; //v의 단위

    if (editText60.getText().length() == 0 || editText61.getText().length() == 0 || editText63.getText().length() == 0) {

    }
    if (editText60.getText().length() >= 1 & editText61.getText().length() == 0 & editText63.getText().length() == 0) {

            double num1 = Double.parseDouble(editText60.getText().toString())*num3;  //f값을 입력하면

            double t = (1/num1)*num4; //f의 값으로 t를 계산하여
            editText61.setText(Double.toString(t)); //setText한다.

            double x = (num2/num1)*num5; //파장
            editText63.setText(Double.toString(x));

        }else if(editText60.getText().length() ==0 & editText61.getText().length() >=1 & editText63.getText().length()==0) {

            double num1 = Double.parseDouble(editText61.getText().toString())*num4;//T

            double f = (num1/1)*num3; //주파수
            editText60.setText(Double.toString(f));

            double x = (num2/f)*num5;
            editText63.setText(Double.toString(x));

        }else if(editText60.getText().length() ==0 & editText61.getText().length()==0 & editText63.getText().length()>=1) {
            double num1 = Double.parseDouble(editText63.getText().toString())*num5; //X

            double f = (num2/num1)*num3;
            editText60.setText(Double.toString(f));

            double t = (1/f)*num4;
            editText61.setText(Double.toString(t));
        }
    }

public void onButton22Clicked(View v) {
    if (editText60.getText().length()!=0 || editText61.getText().length() !=0 || editText63.getText().length() !=0 ) {
        editText60.setText(null);
        editText61.setText(null);
        editText63.setText(null);

 

처음엔 계산이 잘 됩니다. 그러나, 단위값(spinner)만 변경한다음 다시 cal버튼을 눌렀을때,

바뀐 spinner 값이 적용이 안되는 것 같습니다. 아무 변화가 없습니다..

이 경우 어떻게 해야하나요..

 

    }

후니02 (820 포인트) 님이 2015년 11월 26일 질문
잘은 모르겠지만...
double num3 = F1; //f의 단위
    double num4 = T1; //t의 단위
    double num5 = X1; //x의 단위
    double num2 = V1; //v의 단위

이 부분이 스피너 값인거 같은데요.
여기에 변경한 스피너 값이 제대로 들어오는지 부터 확인 하셔야 할듯 합니다. (디버그든 toast를 이용하든...)
만약 안들어 온다면.spinner의 onItemSelected에서 정상적으로 값을 셋팅하는지 부터 spinner값을 가져오는 부분까지..(없으니 추측입니다;;)

EDIT : 조건식이 값이 editText내에 하나씩만 있어야 계산이 되는군요.. 혹시나 두곳에 입력하신건아닌지 아니겠지만요 ㅎㅎ

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...