由于 Titanium 不允许您手动更改文本字段的提示文本颜色,因此我必须手动设置提示文本。因此,我必须动态更改我正在使用的字段之一上的 passwordMask 设置。
但是,我的行为很奇怪,我不知道我做错了什么,或者它是否是 Titanium 中的错误。
所以,这是我的标记:
<TextField id="password" onFocus="passwordFocusEvent" onReturn="passwordReturnEvent" onBlur="passwordBlurEvent" value="password"></TextField>
还有我的一些控制器代码:
function passwordFocusEvent(e) {
slideViewUp();
if (e.value === 'password') {
e.source.setPasswordMask(true);
e.source.value = '';
}
}
function passwordBlurEvent(e) {
if (!e.value) {
e.source.setPasswordMask(false);
e.source.value = 'password';
}
}
function passwordReturnEvent(e) {
slideViewDown();
passwordBlurEvent(e);
}
发生的事情很奇怪。当我专注于密码字段时,它仍然是纯文本。我输入一些文本,然后单击另一个字段,保持纯文本。
我点击回到密码字段,它仍然是纯文本。
现在奇怪的是。到目前为止,我只是假设它不起作用。但是,当我第二次单击关闭时,设置了密码掩码。
主要的WTF。
我什至尝试使用$.password.passwordMask = true;
相同的东西直接定位该字段。