我試圖創建一個登錄身份驗證,並且當用戶輸入錯誤的密碼3次。 用戶名和密碼的texboxes將被禁用,我將用戶輸入與我的SQL數據庫中存儲的用戶名和密碼進行比較,以驗證用戶的用戶名和密碼,我該怎麼做?禁用文本框如果用戶輸入錯誤的密碼3次
1
A
回答
0
你應該使用一個變量來保持嘗試次數。然後,當incorrectGuesses等於3:
editText.setFocusable(false)
或
editText.setEditable(false) // Note that this is deprecated but replacement (inputType) has bug
0
設置EditText只讀: 從create方法中存儲對文本框(EditText)的引用,並在需要時調用.setEditable(false)以禁用它們。也許你還會調用setText(「」)來清除用戶輸入的值。
0
沒有與谷歌影響老版本的Android和一些隨機更新的設備提出了relavent問題。
的effecient,可重複使用的,工作的解決方法是如下(假設這是一個Activity
內):
private Static OnClickListener listener;
@Override
public void onCreate(...){
...
listener = new OnClickListener(){ ... };
}
public void disableEditText(EditText t){
t.setOnClickListener(null);
}
public void enableEditText(EditText t){
t.setOnClickListener(listener);
}
爲的setEnabled(假)問題報告不工作: http://code.google.com/p/android/issues/detail?id=2771
0
你應該存儲嘗試次數爲SharedPreferences。一旦這個值達到3,只要做
editText.setEnabled(false);
您也應該檢查這個數的值在你的onCreate或的onResume,就這樣當用戶關閉應用程序,並重新啓動它,在EditText上仍然會被禁用。
在另一個說明中,您可能想要看看只是禁用「確定/登錄」按鈕(我假設您也有),而不是EditText是否更好。
相關問題
- 1. 限制已輸入密碼錯誤3次的用戶
- 2. 防止輸入錯誤密碼超過3次的用戶
- 3. 如何讓用戶在c#中輸入3次密碼?
- 4. 如果輸入錯誤的用戶名或密碼,則顯示錯誤頁面
- 5. 如何在輸入密碼錯誤時輸入用戶
- 6. 如何在servlet jsp程序中阻止用戶登錄如果他/她輸入錯誤密碼超過3次
- 7. 如果用戶名/密碼錯誤3次,如何鎖定按鈕30秒?
- 8. 顯示用戶輸入錯誤密碼的錯誤信息
- 9. Java要求用戶輸入密碼3次
- 10. 用戶輸入文本框
- 11. 切換禁用/啓用3個相關輸入文本框
- 12. 創建密碼應用程序。如何在密碼輸入錯誤後結束循環3次
- 13. 在文本框中禁用輸入密鑰
- 14. 提交表單文本,如果用戶輸入3個值
- 15. 禁用文本框輸入值
- 16. ASP.Net當用戶在文本框中輸入時禁用回發
- 17. 在JDK 1.4 API中,如何加密用戶在文本框中輸入的用戶密碼?
- 18. 僅當用戶輸入3次錯誤密碼時纔在Django中顯示驗證碼?
- 19. 密碼或用戶名輸入兩次,當用角度輸入時輸入
- 20. Firebase Auth識別用戶是否輸入了錯誤的密碼
- 21. Java:while循環輸入用戶名和密碼3次 - 用break語句發出?
- 22. 用戶在文本框中的輸入
- 23. mysql用戶密碼錯誤
- 24. 在xhtml中禁用輸入密碼
- 25. 禁用屏蔽輸入類型密碼
- 26. 禁止用戶在輸入框的jQuery
- 27. C#禁用基於運行時文本框用戶輸入值的複選框
- 28. 如果輸入值爲文本則禁用,如果輸入值爲
- 29. 谷歌應用腳本 - 在輸入文本框中輸入密鑰 - 如何捕獲或禁用?
- 30. 當用戶輸入錯誤的密碼時,哪個錯誤信息更好?
第一個問題:它何時會再次啓用?你可以簡單地通過setEnabled(布爾值)禁用/啓用EditText; – josephus 2012-03-06 01:39:44
@JosephusVillarey在用戶成功登錄後不會再次啓用,只是想在用戶輸入錯誤密碼或用戶名3次後禁用文本框。 – user1222493 2012-03-06 01:45:17
但是當文本框被禁用時,用戶如何能夠成功登錄?我們在同一條船上嗎? – josephus 2012-03-06 07:27:07