2013-07-26 4 views
2

이전 텍스트를 잃지 않고 텍스트를 EditText에 추가하고 싶습니다.android의 나머지 텍스트에 텍스트를 추가하는 방법

예 :74를 입력, 내가 이전에 입력 한 번호 "7"를 지우지 않고 텍스트 상자에 "4"을 추가 할 수 있습니다.

public void add4() 
{ 
    res = (EditText)findViewById(R.id.editText1); 

    if(res.getText().toString() == "0") 
    { 
     res.setText("4"); 
    } 
    else 
    { 
     // add number 4 to the remaining string 
    }  
} 
+3

사용'append' 대신'settext.' – Raghunandan

+0

'res.append ("4")를 사용할 수 있습니다;' – Houcine

답변

0

res.append("4");하거나 res.setText(res.getText() + "4");

9

당신은 기존 텍스트에 추가 할 수 append 방법을 사용할 수 있습니다.

http://developer.android.com/reference/android/widget/TextView.html#append(java.lang.CharSequence)

res.append("4"); 
이 시도 (사이드 참고로, 문자열을 비교하는 ==를 사용 .equals() 사용하지 않는)

+3

그리고 난 당신이 내가 추가하는 것이 괜찮다 희망을 여기에 쪽지. 'NullPointerException'을 피하기 위해서, 당신은 항상 객체에 대해'.equals'을 실행해야합니다. 여러분이 문자열이라고 확신하는 객체는 ... "0".equals (res.getText(). toString())' –

2

을 :

나는 문자열 개체의 .equals 방법을 사용 객체가 null이거나 문자열이 아닌 경우에 발생할 수있는 NullPointerException을 피하십시오.

public void add4() { 

    res = (EditText)findViewById(R.id.editText1); 

    if("0".equals(res.getText().toString())) 
    { 
     res.setText("4"); 
    } 
    else 
    { 
     res.append("4"); 
    }  
} 
관련 문제