提问者:小点点

如何在延迟后从一个活动重定向到另一个活动?


我是静态编程语言的初学者。例如4秒后,我很难重定向到另一个活动。我知道如何在Java中做到这一点,但我对静态编程语言一无所知。我使用android studio版本2019。

我尝试了android studio的转换器(Java静态编程语言),我找不到一个答案,这个答案可以通过延迟将我从一个活动重定向到另一个活动。我不是在问重定向的其他方法,我是在问延迟。我的意思是如何在不点击任何按钮的情况下进入android程序中的另一个页面。

编辑(9月13日):不幸的是,我仍在努力解决这个问题。我尝试使用这段代码,但它不起作用。你能告诉我问题是什么吗:MainActivity. kt:

package com.rearaa.weading
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.Handler

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
}
val handler = Handler()
val runnable = Runnable {
    val i = Intent(this@MainActivity, MenuPage::class.java)
    startActivity(i)
}
handler.postDelayed(runnable, 4000)

}

在上面的代码中,我想从MainActivity重定向到MenuPage。


共3个答案

匿名用户

这就是你如何使用静态编程语言在android中做到这一点

private lateinit var mHandler: Handler
private lateinit var mRunnable: Runnable

功能:

private fun startMainActivity() {


    mRunnable = Runnable {
        startActivity(Intent(this, MainActivity::class.java))
        finish()
    }

    mHandler = Handler()

    mHandler.postDelayed(mRunnable, 4000)
}

删除回调:

override fun onStop() {
    super.onStop()
    mHandler.removeCallbacks(mRunnable)
}

匿名用户

使用Handler(). postDelayed()
例如:

Handler().postDelayed({
      startActivity(Intent(this, SecondActivity::class.java))
    }, 4000); //4 Seconds

匿名用户

试试这个。

   val r = Runnable {
         //start your activity here
    }
    Handler().postDelayed(r, 3000)

3000是延迟时间,您可以将其更改为您想要的任何值。