如何自动意图到其他活动,如从SplashActivity到其他活动与计时器使用Kotlin?
您可以使用处理程序将延迟的工作排队。
android.os.Handler(Looper.getMainLooper()).postDelayed({
// This will execute after 5 seconds(5000 milliseconds)
// val intent = Intent(context, Destination::class.java)
// startActivity(intent)
// finish()
}, 5000)
使用带有delay的handler,在delay之后导航到其他Activity并在SplashActivity中调用finish()
参考这个示例。这会对你有帮助的。
public class SplashScreen extends AppCompatActivity {
private final Handler handler = new Handler();
@Override
protected void onResume() {
super.onResume();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash_screen);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
final WindowInsetsController insetsController = getWindow().getInsetsController();
if (insetsController != null) {
insetsController.hide(WindowInsets.Type.statusBars());
}
} else {
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN
);
}
handler.postDelayed(() -> {
startActivity(new Intent(SplashScreen.this, TermsScreen.class));
finish();
}, 1000);
}
}