我有以下代码
<androidx.preference.PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<EditTextPreference
app:key="pref_password"
app:title="Password"
app:iconSpaceReserved="false"
app:dialogTitle="Password"
android:inputType="textPassword"/>
</androidx.preference.PreferenceScreen>
但是即使android:inputType="textPassword"
,编辑文本字段也不会被点遮住
我正在使用androidx。任何人都可以帮助
更新
我尝试按照评论者的建议进行追踪,但没有运气
<EditTextPreference
android:key="pref_password"
android:title="Password"
app:iconSpaceReserved="false"
android:dialogTitle="Password"
android:inputType="textPassword"/>
答案 0 :(得分:2)
直接在EditTextPreference上设置属性不适用于AndroidX库-因为EditTextPreference不是'EditText,因此不能这样工作。相反,您应使用BillingClient
自定义EditText,以使其显示。
有关更多信息,请参见settings guide
使用代码进行编辑:
Java:
OnBindEditTextListener
科特琳:
EditTextPreference preference = findPreference("pref_password");
if (preference!= null) {
preference.setOnBindEditTextListener(
new EditTextPreference.OnBindEditTextListener() {
@Override
public void onBindEditText(@NonNull EditText editText) {
editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
}
});
}