如何隐藏和显示Android上的按钮点击密码?

Anj*_*tel 5 android button ontouchlistener ontouch

当按下按钮想要显示密码时,否则应隐藏或点缀.我已应用以下代码,但它无法正常工作.任何帮助,将不胜感激.

 button.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View view, MotionEvent motionEvent) {
            if(button.isPressed()) {
                upass.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
                return true;
            }
            return true;
        }
   });
Run Code Online (Sandbox Code Playgroud)

Cha*_*ruක 8

你已经用过OnTouchListenerMotionEvent.使用它们!只要按下按钮就不需要再次按下按钮MotionEvent.

要使用密码显示密码字段:inputType = TYPE_CLASS_TEXT | TYPE_TEXT_VARIATION_VISIBLE_PASSWORD

按下按钮时,MotionEvent.ACTION_UP您可以看到文本.当MotionEvent.ACTION_DOWN保持它,因为它是在开始.

 button.setOnTouchListener(new OnTouchListener() {
    public boolean onTouch(View v, MotionEvent event) {

            switch ( event.getAction() ) {

            case MotionEvent.ACTION_UP:
            editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
            break;

            case MotionEvent.ACTION_DOWN:
            editText.setInputType(InputType.TYPE_CLASS_TEXT);
            break;

            }
            return true;
            }
            });
Run Code Online (Sandbox Code Playgroud)


Div*_*tel 6

showhide.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                global.hideKeyboard();

                if(showhide.getText().equals("Hide"))
                {
                    showhide.setText("Show");
                    etPassword.setTransformationMethod(PasswordTransformationMethod.getInstance());
                }
                else if(showhide.getText().equals("Show"))
                {
                    showhide.setText("Hide");
                    etPassword.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
                }
            }
        });
Run Code Online (Sandbox Code Playgroud)