2015-01-27 2 views
-5

숫자 입력 유형이있는 edit_text가 있는데 "+"버튼을 누르면 해당 변수가 증가합니다. 나는이 코드를 시도하지만 작동하지 않는다.숫자 입력 유형이있는 Android EditText : 증분이 작동하지 않음

나는 FATAL EXCEPTION이됩니다.

@Override 
public void onClick(View v) { 
    String value = edit_text.getText().toString(); 
    int value_int = Integer.parseInt(value); 
    int incremento = value_int +1 ; 
    edit_text.setText(incremento); 
} 
+0

어디에서 logcat입니까? –

+2

코드를 edit_text.setText (incremento + "")로 변경하십시오. 또는 edit_text.setText (String.valueOf (incremento)); – Jaydeep

답변

2
edit_text.setText(incremento); 

당신에게 오류를주는이 줄. 에 변경하십시오.

edit_text.setText(String.valueOf(incremento)); 

이유는 당신 int과 실패에 대응하는 id의 자원을 찾기 위해 시도로 직접 setText()int을 넣을 수 없다는 것입니다.

0

갱신이 ..

edit_text.setText(""+incremento); 

의 setText()는 정수 ... 따라서 concenating하지 인자로 문자열을 요구하기 때문에 ""마지막으로 이것에 대해

+0

이 질문에 대한 답을 제공하지 않습니다. 비평하거나 저자의 설명을 요청하려면 게시물 아래에 의견을 남겨 둡니다. – NightFury

+0

@iAnum .. 내 대답은 옳았지만. 나는 다른 답변과의 차이점이 동시에 게시 된 것은 아니라고 생각합니다. 비록 그 대답이 간단하지는 않지만. 즉 저자가 왜 FATAL EXCEPTION을 발견 했는가? 나는 광산 업데이트 된 대답이 어떻게 든 당신을 만족시킬 것이라고 희망합니다. –

+0

글쎄, 지금은 더 좋아 보인다 :) – NightFury

0

어떻게 필요한 정수 반환 문자열로 :

@Override 
     public void onClick(View v) { 
      String value=edit_text.getText().toString(); 
      int value_int=Integer.parseInt(value); 
      int incremento=value_int +1 ; 
      edit_text.setText(incremento.toString()); 

     } 
    }); 

일부 노트 상점 :

  1. 입력 유형에 따라 숫자는 정수/정수 및 십진수 (double/Double)와 함께 사용해야합니다. 때때로 변환이 불가능하기 때문에 string/double/int 변환을 처리해야하므로이 경우를 처리해야합니다.
  2. 당신은 두 가지 방법으로 문자열을 INT로 변환 할 수 있습니다

    • edit_text.setText (incremento + "");
    • edit_text.setText (String.valueOf (incremento));