3

无论如何要制作一个 EditTextPreference 单行吗?我认为默认情况下没有属性可以做到这一点。有必要重写对象吗?有人做过吗?

4

4 回答 4

8

也许android:singleLine="true"在布局中:

将edittext限制为单行

于 2013-03-12T19:50:05.870 回答
6

以下代码现在适用于androidx.preferences >= 1.1.0-alpha01

        EditTextPreference author_name_pref = findPreference(getString(R.string.author_name_key));
        if (author_name_pref != null) {
            author_name_pref.setOnBindEditTextListener(new EditTextPreference.OnBindEditTextListener() {
                @Override
                public void onBindEditText(@NonNull EditText editText) {
                    editText.setSingleLine();
                }
            });
        }
于 2019-04-12T14:27:51.140 回答
2

您可以通过调用来获取EditText支持您的内容。然后用它做任何你喜欢的事情,比如使用常规:EditTextPreferencegetEditText()EditText

EditTextPreference pref=new EditTextPreference(context);
EditText editText=pref.getEditText();
editText.setSingleLine(true);
于 2013-03-12T19:49:57.637 回答
1

<EditTextPreference>支持可用于 的属性<EditText>,因此您应该能够使用android:inputMode等来控制EditText小部件的行为。

于 2013-03-12T20:49:17.470 回答