Intent を拡張するクラス MyIntent を作成しました。次に、MyIntent のインスタンスを使用して startActivity(MyIntent) を呼び出します。
MyIntent i=new MyIntent(this,NewActivity.class);
コンストラクターは次のとおりです。
public MyIntent(Context context,Class<?> cls){
super(context,cls);
putExtra(var1,var2);
//other codes
((Activity)context).startActivity(this);
}
ただし、新しく開始されたアクティビティで getIntent() を呼び出すと、getIntent() の戻り値は MyIntent ではなく Intent です。
getIntent() instanceof Intent // true;
getIntent() instanceof MyIntent // false;
(MyIntent)getIntent() を試すと、システムが ClassCastException をスローします。