我是Android开发的新手,我在这里遇到了问题。
我想在倒计时结束时启动一项活动(另一个班级)。
编辑:
Eclipse告诉我代码不起作用,用红色标记我的部分代码。
问题不是来自“宣言”等,我只是无法弄清楚如何实施我的其他活动的召唤。
/编辑
这是我的代码:
public static void launch_countdown(final TextView tv1){
new CountDownTimer(30000, 1000) {
public void onTick(long millisUntilFinished) {
tv1.setText("" + millisUntilFinished / 1000);
}
public void onFinish() {
/* I want to launch my Activity here */
}
}.start();
}
基本上,我该怎样替换我的评论?
PS:我做了一些研究,但它似乎在我的情况下不起作用:How to call an activity from a CountDownTimer?
答案 0 :(得分:1)
如果您在活动中创建此CountdownTimer
,则应该可以执行此操作:
public void onFinish() {
Intent i = new Intent(getApplicationContext(), OtherActivity.class);
startActivity(i);
finish(); // if you want this activity to go away
}
(如果您愿意,可以将getApplicationContext()
替换为CurrentActivity.this
。您不能使用裸this
,因为它引用了匿名CountDownTimer
子类的当前实例onFinish()
属于。)
如果此代码在某个其他类中,则您需要访问第一个参数的Context
。例如,您可以使用tv1.getContext()
。
或者,您可以使用不需要Intent
的其他Context
构造函数之一。有关详细信息,请参阅API docs。