は、私が見ることができます参照してください?
あなたは何らかのアクティビティでこのダイアログショーを持っていて、その選択に基づいて新しいアクティビティを開始すると思います。
ネストされたクラスを使用している場合は、startActivity(currentClassName.this、targetClass.class)を使用してこれを行うことができますが、独自のクラス拡張ダイアログがあるので、ダイアログのコンストラクタにコンテキストを含めるようにします新しいアクティビティを起動すると、親アクティビティコンテキストを使用してダイアログクラスからアクティビティを起動できます。
私はこれを試したので、うまくいかないかもしれませんが、それを撃ってください。
だから、ダイアログを呼び出しアクティビティから、それはあなたのMyDialogClass内側から
MyDialog d = new MyDialog(currentClassName.this);
のようないろいろ書い次のようになります。
public class MyDialog{
private Context c;
public MyDialog(Context c){
this.c=c;
}
public startActivityFromDialog(){
startActivity(c,something.class);
}
}
いいえ、これは役立ちません。 startActivity()は、Activityを継承するクラス内でのみ呼び出すことができます。クラスはDialogを継承しています。これはDialogクラスのサブクラスでstartActivityになります。 – Mellon
'startActivity'はパブリックメソッドです。それは 'Dialog'から呼び出されますか? ( 'getContext()。startActivity'を呼び出すと?) –