사용자가 300에서 2000 사이의 숫자를 입력하거나 선택할 수 있기를 바랍니다. EditTextPreference를 사용하는 것이 좋지만 확인 방법을 모르겠습니다. 값이 실제로 범위 내에있는 경우. 나는 환경 설정 화면에 새로운 있습니다.사용자가 환경 설정 화면에서 숫자 범위에서 선택하도록 허용
내 Preferences.java
public class Preferences extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.simple);
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
SettingsFragment settingsFragment = new SettingsFragment();
fragmentTransaction.add(android.R.id.content, settingsFragment, "SETTINGS_FRAGMENT");
fragmentTransaction.commit();
}
public static class SettingsFragment extends PreferenceFragment{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.pref_layout);
}
}
}
그리고 pref_layout.xml (그것은 단지 하나 개의 기호를 포함합니다)
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
android:title="General">
<EditTextPreference
android:title="frequency"
android:summary="frequency"
android:key="interval"
android:defaultValue="300"
android:numeric="integer"/>
</PreferenceCategory>
</PreferenceScreen>
가 할 수있는 일
서식이 잘못되어 죄송합니다. 나는 그것을 직접 포맷했다. –
감사합니다.하지만이 코드를 어디에 둘 것인지 이해할 수 없으며 attrubuteSet이 무엇인지 알지 못합니다. 방금 클래스를 복사하고 _SettingsFragment_ 클래스를 바꿨습니다. 나는 _Preferences_ 클래스에도 약간의 수정을해야한다고 생각하니? – drogaleggera
@drogaleggera이 클래스를 구현 한 후에해야 할 일은 다음과 같습니다. XML에서'EditTextPrefernce' 대신에 새로운 클래스를 사용해야합니다. 나는 또한 나의 대답을 상세한 설명으로 수정했다. 모든 질문에 대해 언제든지 물어보십시오. –