Мне просто пришлось перейти на использование PreferenceFragmentCompat для реализации проверки разрешений, что означает использование версии поддержки EditTextPreference. К сожалению, кажется, что getEditText отсутствует. Есть ли какая-нибудь работа?Android - Нет метода getEditText в EditTextPreference с библиотекой поддержки предпочтений
Обновление Найдено issue. Кажется, это намеренно было удалено, но ответ не объясняет, как реализовать то, что я хочу сделать.
код я использую следующим образом
final EditText editTextTL;
editTextTL = ((EditTextPreference) findPreference("my_preference")).getEditText();
editTextTL.setFilters(new InputFilter[]{new NumericRangeFilter()});
editTextTL.setOnFocusChangeListener(new AmountOnFocusChangeListener());
Мои соответствующие импорт
import android.support.v7.preference.EditTextPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceCategory;
import android.support.v7.preference.PreferenceFragmentCompat;
Мои Gradle зависимостей
compile 'com.android.support:support-v4:23.0.1'
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.android.support:preference-v14:23.0.1'
compile 'com.android.support:recyclerview-v7:23.0.1'
Если вы хотите использовать более мощный (* т.е. используя XML для установки атрибутов вместо установки из кода *) версии принятого решения, я рекомендую вам взглянуть на мои обходные пути ** Интересные вещи ** часть: https://github.com/Gericop/Android- Support-Preference-V7-Fix –
Спасибо за ссылку, мне нужно было сделать кое-что, что только атрибуты не справятся, но стилистические элементы будут полезны. Удивительно, сколько сломано с этой поддержкой lib. – CodeChimp
Я сообщил об ошибке для Google, пожалуйста, запустите ее, чтобы ее можно было решить: https://code.google.com/p/android/issues/detail?id=233169&q=EditTextPreference&colspec=ID%20Status%20Priority%20Owner % 20Summary% 20Stars% 20Reporter% 20Opened –