마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

로그인 화면을 구성하는데 질문 있습니다

0 추천

비밀번호를 입력하는 EditText와 비밀번호 보이기 기능을 위한 CheckBox가 마련되어 있는데요,

비밀번호는 기본적으로 레이아웃에 InputType이 textPassword로 지정되어 있어서 ****로 표시가 됩니다.

체크박스 부분 코드는 이렇게 짰습니다.

chkPWType = (CheckBox) findViewById(R.id.CheckAuto);
  chkPWType.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View v) {
    EditText pw = (EditText) findViewById(R.id.EditPW);
    if (chkPWType.isChecked() == true) {
     pw.setInputType(InputType.TYPE_CLASS_TEXT);
    } else if (chkPWType.isChecked() == false) {
     pw.setInputType(InputType.TYPE_NUMBER_VARIATION_PASSWORD);
    }
   }
  });

원하는 동작은 보시다시피 체크박스를 누르고 체크되어있다면 InputType을 일반 텍스트로(입력한 비밀번호가 보이도록) 하고,

체크가 안된 상태라면 다시 처음의 상태, 즉 비밀번호가 ****처리되는 상태로 만들고 싶은 건데요,

이게 ****을 일반 텍스트로 바꾸는 것은 되는데, 거꾸로는 되지 않습니다.

 

즉 비밀번호 표시 체크박스를 해제했는데 여전히 표시되는것이죠

 

도움 부탁드리겠습니다(__)

 

토모히 (320 포인트) 님이 2014년 1월 12일 질문

1개의 답변

0 추천

http://stackoverflow.com/questions/9892617/programmatically-change-input-type-of-the-edittext-from-password-to-normal-vic

 

pw.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_NUMBER_VARIATION_PASSWORD);

 

aucd29 (218,390 포인트) 님이 2014년 1월 13일 답변
...