web-dev-qa-db-fra.com

Comment capturer un événement onclick dans EditText désactivé dans Android App

J'ai un EditText que je présente comme désactivé afin que l'utilisateur ne puisse pas modifier le contenu et également pour éviter l'apparition de clavier. Mais maintenant, je veux capturer l'événement onclick dans EditText et identifier les mots individuels qui sont cliqués. Toute aide est la bienvenue.

Merci, Balkrishna.

49
Balkrishna Rawool

Sur votre EditText définissez les attributs Android:focusable="false" Et Android:enabled="true". Et définissez OnClickListener sur ce EditText. Le clic sur Edittext déclenche la méthode onClick() mais elle ne peut pas être modifiée. Je viens de l'essayer.

88
Rajkiran

Vous pouvez rendre le composant non cliquable à l'aide de.

editText.setClickable(false);

Pour rendre le composant visuellement désactivé en diminuant la valeur Alpha.

editText.setAlpha(0.5f);

Il vous permettra de définir un OnTouchListener sur votre composant par lequel vous pouvez effectuer les opérations souhaitées.

editText.setOnTouchListener(new View.OnTouchListener() {
                    @Override
                    public boolean onTouch(View v, MotionEvent event) {
                        Toast.makeText(getApplicationContext(),"Component is disabled", Toast.LENGTH_SHORT).show();
                        return false;
                    }
                });
4
Omer Shafiq