안녕하세요.

가끔  EditTextPreference 에서 숫자만 입력 받아야 하는 경우가 있지요.

아래와 같이  쉽게 되더군요. 

xml 의  내용

 <EditTextPreference
                android:key="temp_high_preference"
                android:title="@string/temp_high_title"
                android:summary="@string/temp_high_summary"
                android:dialogTitle="@string/temp_high_title" />


클래스  선언부에  아래와 같이  
멤버변수를 선언했다고 할때,

public static final String KEY_TEMP_HIGH = "temp_high_preference";
private EditTextPreference mTempHigh;


onCreate() 에서  

mTempHigh = (EditTextPreference)getPreferenceScreen().findPreference(KEY_TEMP_HIGH);

EditText myEditText = (EditText)mTempHigh.getEditText();
myEditText.setKeyListener(DigitsKeyListener.getInstance(false,true));

핵심은  위 마지막  문장이랍니다.

수고하세요