마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

액티비티간 전역변수 제어에 관해서 질문 드립니다..

0 추천

A 액티비티 쓰레드안의 와일문을 돌릴겁니다.

B 액티비티의 버튼 (On/Off) 에 의해 A의 전역변수로 인해서 와일문이 동작하거나 끄게 하고싶은데

B 액티비티에서 On을 눌러도 와일문이 바로 실행되지 않고

On버튼을 누른뒤 A액티비티로 이동해야만 와일문이 실행이 됩니다..

Off는 제대로 작동합니다.(Off버튼 누를시 바로 와일문이 멈춤)

무엇이 문제인지 모르겠습니다..

 

 

class A extends Activity {

 public static boolean threadFlag;

...생략

 

...쓰레드부분

 private static class testAsync extends AsyncTask<Void, Integer, Void>{

  @Override
  protected Void doInBackground(Void... params) {

   long before_millis = -1;
   long current_millis = -1;
   while(threadFlag){
    
    current_millis = System.currentTimeMillis();
    if(current_millis - before_millis >1000)
    {
     Log.d("AsyncTask", "on...");
     before_millis = current_millis;
    }
    
   }
   
   return null;
  }
  
 
 }

}

 

class B extends Activity {

    public void OnCreate() {

    OnBtn 클릭시...

    A.threadFlag=true;       

    OffBtn 클릭시...

    A.threadFlag=false;       

    }

}

익명사용자 님이 2015년 11월 18일 질문

1개의 답변

0 추천

class B extends Activity {

    public void OnCreate() {

    OnBtn 클릭시...

    A.threadFlag=true;       

    A. testAsync .excute();

    OffBtn 클릭시...

    A.threadFlag=false;       

    }

}

익명사용자 님이 2015년 11월 18일 답변
...