1

私はアンドロイドが初めてで、有線の問題に直面しています。

私はこのような活動を始めています:

Intent i = new Intent(getApplicationContext(),InvoiceActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.putExtra("invoice",extras.getString("invoice"));
startActivity(i);

ログに次の行が表示されます。

Starting: Intent { flg=0x10000000 cmp=com.simplepay.hellomobile/.InvoiceActivity (has extras) } from pid 4785

しかし、エミュレーターとAndroidデバイスでは、アクティビティがまったく開始されていません。も例外ではありません。

間違いはどこにあるでしょう?

前もって感謝します。

4

4 に答える 4

2

startActivityを追加していません: これを追加します:startActivity(i);

于 2013-03-15T14:01:24.050 に答える
0
Intent i = new Intent(this,InvoiceActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.putExtra("invoice",extras.getString("invoice"));
startActivity(i);

上記のコードは実行されますが、これを実行する前に、Android の基本を学習することを強くお勧めします。1 つのアクティビティから別のアクティビティを開始するには、Android 開発者サイトリンクの良い例を次に示します。

于 2013-03-15T14:02:45.453 に答える
0

あなたの問題は、アプリケーション全体のコンテキストを使用していることです。代わりに、現在のアクティビティのコンテキストを使用してください。

 Intent i = new Intent(this,InvoiceActivity.class);
 i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
 i.putExtra("invoice",extras.getString("invoice"));
 startActivity(i);

または、このようにすることもできます。

Intent i = new Intent(YourCurrentActivity.this,InvoiceActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.putExtra("invoice",extras.getString("invoice"));
startActivity(i);
于 2013-03-15T14:16:37.760 に答える
0

これを試して:

Intent i = new Intent(this,InvoiceActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.putExtra("invoice",extras.getString("invoice"));
startActivity(i);
于 2013-03-15T13:58:23.170 に答える