2013-05-14 50 views
2

我在鈦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事件用於顯示密碼,即設置passwordMask爲假時,發生事件touchstart和重置爲真時touchend事件發生。

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

它在密碼字段模糊時很好用,但如果密碼字段是焦點,我按「?」按鈕密碼顯示,我能不能隱藏顯示密碼

回答

2

最後,我得到的輸出

我用標籤顯示的密碼,並設置明顯的假,當touchstart事件發生,我改變passwordShow標籤可見真並設置密碼字段可見,以禁用,當touchend事件發生時,我將密碼字段可見重置爲true,密碼顯示標籤可見爲false。

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 = ''; 
    } 
});