램을 저장하기 위해 특정 응용 프로그램을 실행할 때 시간을 계산하는 앱에서 작업 중입니다. 확인란을 사용하여 일부 스레드를 중지하려고합니다. 내가 스레드가 중지 확인란을 누를 때 나는 명령을 원하는 경우에도 "조건은"잘 "클릭하면 스레드를 사용하지 않음
인 경우 감지 응용 프로그램의 실행 조건 :
if (MainActivity.tgbutton.isChecked())
{
if (packageName.equals("com.facebook.katana"))
{
if (f==1)
{
}
else
{
// Toast.makeText(getApplicationContext(),"fb on", Toast.LENGTH_SHORT).show();
f=1;
facebook = true;
startTimef = SystemClock.uptimeMillis();
customHandlerf.postDelayed(updateTimerThreadfacebook, 0);
}
}
else
{
if(f==1)
{
//Toast.makeText(getApplicationContext(),"fb off", Toast.LENGTH_SHORT).show();
facebook = false;
timeSwapBufff += timeInMillisecondsf;
customHandlerf.removeCallbacks(updateTimerThreadfacebook);
f=2;
}
}
}
확인란 :
blabla.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (((CheckBox) v).isChecked()) {
// what to write here to disable thread???
}
}
});
스레드 자체 :
private Runnable updateTimerThreadfacebook = new Runnable() {
public void run() {
if (facebook = true)
{
timeInMillisecondsf = SystemClock.uptimeMillis() - startTimef;
updatedTimef = timeSwapBufff + timeInMillisecondsf;
int secsf = (int) (updatedTimef/1000);
int minsf = secsf/60;
secsf = secsf % 60;
MainActivity.facebook.setText("" + minsf + ":" + String.format("%02d", secsf));
customHandlerf.postDelayed(this, 0);
}
}
};
을 중단하려면 내가 어떤 스레드 코드 그러나 여기에서'customHandlerf.removeCallbacks 표시되지 않습니다 (updateTimerThreadfacebook) ;' –