验证首选项。 Android的

时间:2011-09-27 04:50:43

标签: android android-preferences

我有PreferenceActivity个字段。

  1. 网址
  2. 以秒为单位的时间
  3. 我需要验证第一个有效URL,第二个验证整数值。我如何用标准方法做到这一点?

2 个答案:

答案 0 :(得分:16)

以下是您的片段中实现OnPreferenceChangeListener的一些代码:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.preferences);

    Your_Pref = (EditTextPreference) getPreferenceScreen().findPreference("Your_Pref");

    Your_Pref.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {

        @Override
        public boolean onPreferenceChange(Preference preference, Object newValue) {
            Boolean rtnval = true;
            if (Your_Test) {
                final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
                builder.setTitle("Invalid Input");
                builder.setMessage("Something's gone wrong...");
                builder.setPositiveButton(android.R.string.ok, null);
                builder.show();
                rtnval = false;
            }
            return rtnval;
        }
    });
}

答案 1 :(得分:3)

您可以对xml中的这些字段使用android:inputType属性,这将向用户显示键盘,以便以特定格式输入值。

查看更多

http://developer.android.com/reference/android/text/InputType.html

但这并不能保证URL不会格式错误。您需要在提交处理程序中使用正则表达式进行检查。