Android EditTextPreference 光标问题
LZ同事偶然发现一个问题,公司的产品在他的android手机上点击EditTextPreference弹出框,光标默认在文字的最前面,而我的手机却是在最后面,后者更符合用户的使用习惯。根据现象可以定位为各个厂商定制的android系统修改了相关的设置,而我们上层APK是否可以做到修正呢?于是我查找了EditText和EditTextPreference 相关源码,终于找到了解决方法。
实现接口 Preference.OnPreferenceClickListener
然后覆盖方法
@Override public boolean onPreferenceClick(Preference preference) { if (preference instanceof EditTextPreference) { EditTextPreference editTextPref = (EditTextPreference) preference; if (!(editTextPref.getText() == null || editTextPref.getText() .equals(""))) { editTextPref.getEditText().setSelection( editTextPref.getText().length()); } } return true; }
分类: Android