我需要在时间 0 开始一个活动,让它在前台保持 15 秒,然后停止活动。这样做的最佳方法是什么?
谢谢!
你可以试试:
int duration = 15000; // milliseconds
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
finish();
}
}, duration);
这将在 15 秒后自动完成您的活动。
用于AlarmManager
在 15 秒内回调 Activity,AlarmManager
可以在此处查看使用示例:http: //code4reference.com/2012/07/tutorial-on-android-alarmmanager/。
被调用的BroadcastReciever
应该在 main 内部Activity
并且应该调用finish()
.
您正在寻找splashActivity
:
public class SplashScreenActivity extends Activity {
private static final int DURATION = 15000; // 15 seconds
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash_screen);
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
finish();
}
}, DURATION);
}
}
你可以在这里看到一个完整的工作示例。