0

インテントではなく標準オブジェクトとして初期化された場合に、コンストラクターで引数として受け取るパラメーターを設定する方法はありますか?インテントを送信しても必ずしもアクティビティ/サービスが初期化されるとは限らないため(すでに存在している可能性があります)、インテントに格納されているパラメーターを使用できません。マニフェストファイルを使用してカスタムパラメータを設定できますか?ありがとう。

4

3 に答える 3

0

ここで可能な解決策を見つけました: Is it possible to have custom attributes in AndroidManifest.xml tags? オブジェクトを渡したい場合は役に立ちませんが、単純な型の場合は十分です。

于 2012-09-07T13:21:55.580 に答える
0

アクティビティを開始すると常にアクティビティが開始され、アクティビティがすでにスタックにある場合は、インテント フィルターが指定されていない限り、アクティビティも起動されます。

Service の場合、startService() でサービスを開始すると、Intent をパラメーターとして持つ onStartCommand() メソッドが呼び出され、このパラメーターから渡された値を取得できます。

于 2012-08-31T12:55:27.597 に答える
0

インテントを送信しても、必ずしもアクティビティ/サービスが初期化されるとは限りません (すでに存在している可能性があります)。

Intents を使い続けて、呼び出すたびに TargetActivity の履歴を消去するとどうなるでしょうか。

Intent intent = new Intent(this,TargetActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent); 
于 2012-08-31T12:56:03.073 に答える