私は、それがコードや方法活動に提示し、その活動が
public class AsynClassValue
{
public static int a;
public void getValue()
{
Intent intent = new Intent(MyApplication.getContext(),AsyncActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
MyApplication.getContext().startActivity(intent);
System.out.println("value of variable a"+a);
}
}
その名前はAsynClassValue
ある一つの非活動のJavaクラス以下のいるしている非活動クラスから呼び出されるAsyncTask仕上げまでのプログラムの流れを停止する方法getValue()
メソッドでこのクラスの新しいアクティビティを開始しています。
私はアプリケーションコンテキストを持つMyApplicationクラスを使用しています。 AsyncActivity
で
はActivity
あり、それはそれでAsyncTask
を有し、そのonPostExecute()
方法で、私はAsynClassValue
の静的変数「A」に値を代入していますし、最終的に私は「」でAsynClassValue
クラスを変数の値を印刷しています。
問題は、変数 "a"の値がnull
ですが、印刷文はインテントの開始後であることが問題です。
プログラムの制御フローを停止する方法アクティビティクラスによるすべてのタスク終了は、インテントを使用して開始され、その次のプリントステートメントの後に開始されます。
* AsyncTaskを使用しないでAsyncTaskが終了するまでの流れを止める方法 – Selvin