我有一个PreferenceScreen
where 3 它的偏好TimePreferences
。TimePreference
是一个扩展的自定义类DialogPreference
,它包含一个TimePicker
. 我按照此代码创建了它。
现在我想限制TimePicker
输入。每个都TimePreference
需要有一个特定的时间限制(这个限制在每个中都会不同TimePreference
),我将使用这个限制来检查输入值。即,我可能希望第一个TimePreference
低于 1 小时,第二个到 5 小时,最后一个没有限制。
因为我想避免使用 3 个不同的类,所以我正在寻找一种将一些数据发送到偏好的方法。我尝试使用 defaultValue,但是当用户已经选择了任何值时它为空。
我的 PreferenceActivity 使用PreferenceFragment
. 这是他们的代码:
public class PrefsActivity extends Activity {
@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getFragmentManager().beginTransaction().replace(android.R.id.content,
new PrefsFragment()).commit();
}
}
public class PrefsFragment extends PreferenceFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.prefs_tod);
}
}
我可以将此数据发送到首选项吗?还是我应该有 3 个不同的课程?
谢谢!