如果EditTextPreference是蒙版密码字段,我如何屏蔽它的摘要?

时间:2014-01-16 10:45:09

标签: java android android-edittext android-preferences

我使用附加到onPreferenceChangeListener的{​​{1}},其中显示了摘要中偏好的值。这是它的样子:

EditTextPreference

如果该字段是屏蔽密码字段,我想在摘要中显示默认密码掩码字符。以下是蒙版字段的示例:

public boolean onPreferenceChange(Preference prePreference, Object objValue) {
    if (prePreference instanceof EditTextPreference) {
        //TODO: Check if password type and show chacraters
        prePreference.setSummary(objValue.toString());
    }
    return true;
}

3 个答案:

答案 0 :(得分:9)

类似的东西:

EditText edit = ((EditTextPreference) prePreference).getEditText();
String pref = edit.getTransformationMethod().getTransformation(objValue.toString(), edit).toString();
prePreference.setSummary(pref);

答案 1 :(得分:1)

更简单,请不要将生成的bindPreferenceSummaryToValue(进而调用setSummary)调用密码首选项。

请注意,您不应该在首选项中存储密码,而是在需要时从密码中提示,从服务中获取令牌,然后存储令牌。

答案 2 :(得分:0)

为什么不检查文本大小并将文本视图中的每个整数放在textview中?还是我误解了你?

或者看一下这个链接:

Hide password/viewpassword