Comment faire pour démarrer une activité à partir d'une boîte de dialogue dans Android

J'ai créé un dialogue personnalisé et j'aimerais commencer une nouvelle activité lorsque vous cliquez sur OK. Comment puis-je obtenir le contexte de la définir comme premier argument de mon Intention constructeur?

Je peux créer de l'intention à l'aide de getContext(), mais je ne peux pas appeler startActivity. Dois-je passer à l'activité de l'appel de la boîte de dialogue la boîte de dialogue du constructeur? C'est la façon habituelle de démarrer une activité en cliquant sur une boîte de dialogue?

public class CustomDialog extends Dialog implements OnClickListener {
    Button okButton, cancelButton;

    public CustomDialog(Context context) {      
        super(context);     
        setContentView(R.layout.custom_dialog);
        okButton = (Button) findViewById(R.id.button_ok);
        okButton.setOnClickListener(this);
        cancelButton = (Button) findViewById(R.id.button_cancel);
        cancelButton.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {       
        if (v == cancelButton)
            dismiss();
        else {
            Intent i = new Intent(getContext(), ItemSelection.class);
            startActivity(i); //The method startActivity(Intent) is undefined for the type CustomDialog
        }
    }
}

OriginalL'auteur jul | 2011-02-21