Comment recevoir un événement sur android checkbox check change?

quelle serait la bonne façon de recevoir et d'envoyer un événement lorsqu'une case est à activer ou désactiver. Dans c#, je pouvais simplement double-cliquer et tout le code serait fait pour moi. mais dans android, il semble être un peu plus obscur. j'ai pensé à utiliser les gestionnaires d'événements tactiles, mais si l'Utilisateur a un clavier, il ne détectera pas le changement car il n'est pas tactile. Je pense que android devrait avoir un événement natif pour le changement d'état de la boîte de contrôle.

44
demandé sur Annerajb 2010-06-30 16:56:08
la source

3 ответов

CheckBox repeatChkBx = ( CheckBox ) findViewById( R.id.repeat_checkbox );
repeatChkBx.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
    @Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
    {
        if ( isChecked )
        {
            // perform logic
        }

    }
});
131
répondu Cristian 2015-12-23 11:40:54
la source

depuis CheckBox (eventuellement) étend la vue, vous pouvez utiliser un OnClickListener standard pour détecter quand la case à cocher est effectivement tapée par l'utilisateur (par opposition aux mises à jour de ListView):

CheckBox repeatChkBx = ( CheckBox ) findViewById( R.id.repeat_checkbox );
repeatChkBx.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {

        if ( ((CheckBox)v).isChecked() ) {
            // perform logic
        }
    }
});
5
répondu Phileo99 2016-05-30 21:33:17
la source

Essayez ceci

CheckBox checkbox=(CheckBox)findViewById(R.id.checkbox);
checkbox.setOnClickListener(new View.OnClickListener()
{
        @Override
        public void onClick(View v)
        {
            if (checkbox.isChecked())
            {
             //Perform action when you touch on checkbox and it change to selected state
            }
            else
            {
   //Perform action when you touch on checkbox and it change to unselected state
            }
        }
    });
0
répondu Sunil 2017-05-23 10:12:31
la source

Autres questions sur android events checkbox