单击“?”时如何显示输入的密码按键

时间:2013-05-14 08:45:47

标签: titanium

我在钛iPhone应用程序中使用密码字段,如果用户按下“?”,我需要显示输入的密码发布后的按钮和掩码密码字段“?”按钮。我用过这些代码

var password = Ti.UI.createTextField
({
   font : {fontSize : 15, fontType: 'HaveticaL TStd', fontWeight: 'roman'},
   hintText: "***************",
   top : 54,
   left : 107,
   height : 24,
   width : 153,
   passwordMask : true,
   color : "black",
   returnKeyType : Titanium.UI.RETURNKEY_DONE,
   zIndex : 5
});

我使用touchstart和touchend事件来显示密码,即在touchstart事件发生时将passwordMask设置为false,并在touchend事件发生时重置为true。

passwordHintImg.addEventListener('touchstart',function(e){
    passwordTxt.passwordMask = false;
});
passwordHintImg.addEventListener('touchend',function(e){
    passwordTxt.passwordMask = true;
});

当密码字段模糊时效果很好,但如果密码字段被聚焦,我按“?”按钮密码显示,我无法隐藏显示密码

1 个答案:

答案 0 :(得分:2)

最后,我得到了输出

我使用label来显示密码并将visible设置为false,当touchstart事件发生时我更改了passwordShow Label可见为true并设置了密码字段visble以禁用,当touchend事件发生时我重置密码字段可见为true且passwordShow标签可见假的。

var passwordShow = Ti.UI.createLabel({
    font : {fontSize : 15, fontType: 'HaveticaL TStd', fontWeight: 'roman'},
    top : 54,
    left : 107,
    height : 24,
    width : 153,
    visible : false,
    backgroundColor : 'transparent',
    color : "black",
    zIndex : 15
});
passwordShowVw.addEventListener('touchstart',function(e){
    if(passwordTxt.value.length > 0)
    {
        passwordTxt.visible = false;
        passwordShow.visible = true;
        passwordShow.text = passwordTxt.value;  
    }
});
passwordShowVw.addEventListener('touchend',function(e){
    if(passwordTxt.value.length > 0)
    {
         passwordShow.visible = false;
         passwordTxt.visible = true;
         passwordShow.text = '';
    }
});