0
나는 활동 A, B, C, D를 가지고있다 ... 나는 활동 A에서 countdowntimer를 만든다 ... 나는 활동 B, C, D에서 그것의 방법을 호출하고 싶다. 타이머 변수를 정적으로 만들려고했지만 몇 가지 문제가 있으며 제대로 작동하지 않습니다. 또한 좋은 프로그래밍 방법이 아닙니다. 이렇게하려면 다른 방법이 있습니까 ??CountDownTimer를 여러 액티비티에 공통으로 만드는 방법은 무엇입니까?
public class CountTime extends Activity {
static MyCount count;
Button clickBtn;
TextView tv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.customanim); // 5000 is
// the
// starting
// number
// (in
// milliseconds)
// 1000 is the number to count down each time (in milliseconds)
count = new MyCount(5000, 1000);
count.start();
tv = (TextView) findViewById(com.example.sample.R.id.textView1);
clickBtn = (Button) findViewById(R.id.button1);
clickBtn.setText("Click me");
clickBtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent my = new Intent(getApplicationContext(),
MainActivity.class);
//my.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(my);
}
});
}
@Override
public void onUserInteraction() {
// TODO Auto-generated method stub
super.onUserInteraction();
//count.start();
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
count.cancel();
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
count.start();
}
// countdowntimer is an abstract class, so extend it and fill in methods
public class MyCount extends CountDownTimer {
public MyCount(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
@Override
public void onFinish() {
tv.setText("done!");
Toast.makeText(getApplicationContext(), "Finsihed", Toast.LENGTH_LONG).show();
}
@Override
public void onTick(long millisUntilFinished) {
tv.setText("Left: " + millisUntilFinished/1000);
}
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
}
}
이유를 작성하지 않는 반 환을? –
서비스를 확장하는 활동에 타이머 코드를 작성하십시오. 활동 A에서 서비스를 시작하십시오. – Deepzz
왜냐하면 ... 나는 onfinish 방법으로 새로운 활동을 시작하고 싶습니다. – Audi